* function.c (instantiate_virtual_regs_in_insn): Call force_reg
inside start_sequence / end_sequence pair.
From-SVN: r119192
+2006-11-25 Joseph Myers <joseph@codesourcery.com>
+
+ * function.c (instantiate_virtual_regs_in_insn): Call force_reg
+ inside start_sequence / end_sequence pair.
+
2006-11-25 Steven Bosscher <steven@gcc.gnu.org>
* jump.c (mark_all_labels): Work in cfglayout mode.
Validate the new value vs the insn predicate. Note that
asm insns will have insn_code -1 here. */
if (!safe_insn_predicate (insn_code, i, x))
- x = force_reg (insn_data[insn_code].operand[i].mode, x);
+ {
+ start_sequence ();
+ x = force_reg (insn_data[insn_code].operand[i].mode, x);
+ seq = get_insns ();
+ end_sequence ();
+ if (seq)
+ emit_insn_before (seq, insn);
+ }
*recog_data.operand_loc[i] = recog_data.operand[i] = x;
any_change = true;