http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55929



--- Comment #3 from Uros Bizjak <ubizjak at gmail dot com> 2013-01-10 17:30:36 
UTC ---

Patch in testing:



Index: i386.md

===================================================================

--- i386.md     (revision 195063)

+++ i386.md     (working copy)

@@ -18018,7 +18018,10 @@

 {

   rtx label = gen_label_rtx ();



-  operands[1] = force_reg (SImode, constm1_rtx);

+  /* xbegin is emitted as jump_insn, so reload won't be able

+     to reload its operand.  Force the value into AX hard register.  */

+  operands[1] = gen_rtx_REG (SImode, AX_REG);

+  emit_move_insn (operands[1], constm1_rtx);



   emit_jump_insn (gen_xbegin_1 (operands[1], label));

Reply via email to