From: Richard Earnshaw Date: Thu, 20 May 2004 14:59:43 +0000 (+0000) Subject: arm.md (ite_ne_zeroextractsi, [...]): Ensure we don't earlyclobber operands used... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=692603556b895a3a337b5a82e0012f69e8707896;p=gcc.git arm.md (ite_ne_zeroextractsi, [...]): Ensure we don't earlyclobber operands used in the second insn. * arm.md (ite_ne_zeroextractsi, ite_ne_zeroextractsi_shifted): Ensure we don't earlyclobber operands used in the second insn. From-SVN: r82057 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 09873bc767e..fb5adc9d93a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-05-20 Richard Earnshaw + + * arm.md (ite_ne_zeroextractsi, ite_ne_zeroextractsi_shifted): Ensure + we don't earlyclobber operands used in the second insn. + 2004-05-20 Steven Bosscher * tree-mudflap.c: Formatting fixes. diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 02717852f27..82f1701674f 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -1719,13 +1719,15 @@ && (INTVAL (operands[3]) >= 0 && INTVAL (operands[3]) < 32 && INTVAL (operands[2]) > 0 && INTVAL (operands[2]) + (INTVAL (operands[3]) & 1) <= 8 - && INTVAL (operands[2]) + INTVAL (operands[3]) <= 32)" + && INTVAL (operands[2]) + INTVAL (operands[3]) <= 32) + && !reg_overlap_mentioned_p (operands[0], operands[4])" "#" "TARGET_ARM && (INTVAL (operands[3]) >= 0 && INTVAL (operands[3]) < 32 && INTVAL (operands[2]) > 0 && INTVAL (operands[2]) + (INTVAL (operands[3]) & 1) <= 8 - && INTVAL (operands[2]) + INTVAL (operands[3]) <= 32)" + && INTVAL (operands[2]) + INTVAL (operands[3]) <= 32) + && !reg_overlap_mentioned_p (operands[0], operands[4])" [(parallel [(set (reg:CC_NOOV CC_REGNUM) (compare:CC_NOOV (and:SI (match_dup 1) (match_dup 2)) (const_int 0))) @@ -1751,9 +1753,9 @@ (match_operand:SI 3 "arm_not_operand" "rIK") (const_int 0))) (clobber (reg:CC CC_REGNUM))] - "TARGET_ARM" + "TARGET_ARM && !reg_overlap_mentioned_p (operands[0], operands[3])" "#" - "TARGET_ARM" + "TARGET_ARM && !reg_overlap_mentioned_p (operands[0], operands[3])" [(parallel [(set (reg:CC_NOOV CC_REGNUM) (compare:CC_NOOV (ashift:SI (match_dup 1) (match_dup 2)) (const_int 0)))