re PR target/27182 (SH: wrong-code generation)
authorKaz Kojima <kkojima@gcc.gnu.org>
Thu, 20 Apr 2006 01:54:20 +0000 (01:54 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Thu, 20 Apr 2006 01:54:20 +0000 (01:54 +0000)
PR target/27182
* config/sh/sh.md (movsicc_true+3): Tweak condition for the case
that the last insn has the REG_INC note.

From-SVN: r113109

gcc/ChangeLog
gcc/config/sh/sh.md

index 402493335f63267fdd408135b687de2842e2d431..023894bfc0c2c5d779e102b0672b862242bfb839 100644 (file)
@@ -1,3 +1,9 @@
+2006-04-20  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/27182
+       * config/sh/sh.md (movsicc_true+3): Tweak condition for the case
+       that the last insn has the REG_INC note.
+
 2006-04-19  Carlos O'Donell  <carlos@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
 
index ff36d9a932aedf5e00e82e2159abb86b5e55aac3..d05fc10f840511b4aa4ad11ee15aad1cf2b319c4 100644 (file)
   "(HARD_REGNO_NREGS (REGNO (operands[0]), GET_MODE (operands[2]))
     <= HARD_REGNO_NREGS (REGNO (operands[0]), GET_MODE (operands[0])))
    && peep2_reg_dead_p (3, operands[0]) && peep2_reg_dead_p (3, operands[2])
+   && ! FIND_REG_INC_NOTE (peep2_next_insn (2), operands[0])
+   && ! FIND_REG_INC_NOTE (peep2_next_insn (2), operands[2])
    && ! reg_overlap_mentioned_p (operands[0], operands[3])
    && ! reg_overlap_mentioned_p (operands[2], operands[0])
    && ! reg_overlap_mentioned_p (operands[0], operands[1])