]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
alpha.md (movqicc_internal): Allow exactly one zero in the conditional.
authorRichard Henderson <rth@redhat.com>
Thu, 28 Oct 2004 17:21:00 +0000 (10:21 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 28 Oct 2004 17:21:00 +0000 (10:21 -0700)
        * config/alpha/alpha.md (movqicc_internal): Allow exactly one
        zero in the conditional.
        (movhicc_internal, movsicc_internal, movdicc_internal): Likewise.

From-SVN: r89766

gcc/ChangeLog
gcc/config/alpha/alpha.md

index 5277f53e2882fc53c69b0528c420b6cd6b451f51..75e9cb280ecbe58708b95803fb124827bbdd2067 100644 (file)
@@ -1,3 +1,9 @@
+2004-10-28  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.md (movqicc_internal): Allow exactly one
+       zero in the conditional.
+       (movhicc_internal, movsicc_internal, movdicc_internal): Likewise.
+
 2004-10-28  Richard Henderson  <rth@redhat.com>
 
        * cse.c (memory_extend_rtx): Remove.
index 09967b5841701bf28eba7fde5d88b2809fa5ad81..ed47e9fe1dc8f71d0ab2117df478b7abbdf70df8 100644 (file)
                          (match_operand:DI 4 "reg_or_0_operand" "J,J,rJ,rJ")])
         (match_operand:QI 1 "add_operand" "rI,0,rI,0")
         (match_operand:QI 5 "add_operand" "0,rI,0,rI")))]
-  "(operands[3] == const0_rtx || operands[4] == const0_rtx)"
+  "(operands[3] == const0_rtx) ^ (operands[4] == const0_rtx)"
   "@
    cmov%C2 %r3,%1,%0
    cmov%D2 %r3,%5,%0
                          (match_operand:DI 4 "reg_or_0_operand" "J,J,rJ,rJ")])
         (match_operand:HI 1 "add_operand" "rI,0,rI,0")
         (match_operand:HI 5 "add_operand" "0,rI,0,rI")))]
-  "(operands[3] == const0_rtx || operands[4] == const0_rtx)"
+  "(operands[3] == const0_rtx) ^ (operands[4] == const0_rtx)"
   "@
    cmov%C2 %r3,%1,%0
    cmov%D2 %r3,%5,%0
                          (match_operand:DI 4 "reg_or_0_operand" "J,J,rJ,rJ")])
         (match_operand:SI 1 "add_operand" "rI,0,rI,0")
         (match_operand:SI 5 "add_operand" "0,rI,0,rI")))]
-  "(operands[3] == const0_rtx || operands[4] == const0_rtx)"
+  "(operands[3] == const0_rtx) ^ (operands[4] == const0_rtx)"
   "@
    cmov%C2 %r3,%1,%0
    cmov%D2 %r3,%5,%0
                          (match_operand:DI 4 "reg_or_0_operand" "J,J,rJ,rJ")])
         (match_operand:DI 1 "add_operand" "rI,0,rI,0")
         (match_operand:DI 5 "add_operand" "0,rI,0,rI")))]
-  "(operands[3] == const0_rtx || operands[4] == const0_rtx)"
+  "(operands[3] == const0_rtx) ^ (operands[4] == const0_rtx)"
   "@
    cmov%C2 %r3,%1,%0
    cmov%D2 %r3,%5,%0