re PR bootstrap/62300 (internal compiler error: in as_a, at is-a.h:192)
authorDavid Malcolm <dmalcolm@redhat.com>
Fri, 29 Aug 2014 03:12:01 +0000 (03:12 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Fri, 29 Aug 2014 03:12:01 +0000 (03:12 +0000)
PR bootstrap/62300
* function.c (assign_parm_setup_reg): Remove erroneous checked
cast to rtx_insn * on result of gen_extend_insn in favor of
introducing a new local rtx "pat".

From-SVN: r214714

gcc/ChangeLog
gcc/function.c

index 3f821e9..ac5dc7c 100644 (file)
@@ -1,3 +1,10 @@
+2014-08-29  David Malcolm  <dmalcolm@redhat.com>
+
+       PR bootstrap/62300
+       * function.c (assign_parm_setup_reg): Remove erroneous checked
+       cast to rtx_insn * on result of gen_extend_insn in favor of
+       introducing a new local rtx "pat".
+
 2014-08-29  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
 
        * config/mep/mep-pragma.c (mep_pragma_coprocessor_subclass): Rework
index dc9c06b..464c6cd 100644 (file)
@@ -3039,10 +3039,9 @@ assign_parm_setup_reg (struct assign_parm_data_all *all, tree parm,
            }
          else
            t = op1;
-         insn = as_a <rtx_insn *> (
-                  gen_extend_insn (op0, t, promoted_nominal_mode,
-                                   data->passed_mode, unsignedp));
-         emit_insn (insn);
+         rtx pat = gen_extend_insn (op0, t, promoted_nominal_mode,
+                                    data->passed_mode, unsignedp);
+         emit_insn (pat);
          insns = get_insns ();
 
          moved = true;