predicates.md (branch_comparison_operator): Remove redundant match_code test.
authorDavid Edelsohn <edelsohn@gnu.org>
Mon, 7 Mar 2005 00:21:27 +0000 (00:21 +0000)
committerDavid Edelsohn <dje@gcc.gnu.org>
Mon, 7 Mar 2005 00:21:27 +0000 (19:21 -0500)
        * config/rs6000/predicates.md (branch_comparison_operator): Remove
        redundant match_code test.
        (scc_comparison_operator): Swap match_operand and match_code
        tests.
        (branch_positive_comparison_operator): Same.
        (trap_comparison_operator): Use comparison_operator and swap with
        match_code test.

From-SVN: r96000

gcc/ChangeLog
gcc/config/rs6000/predicates.md

index 52b36d7625fa8bf9e883713be3e0a29b67d1d023..521aebed82dab3a48074df6913fd233519f8fca4 100644 (file)
@@ -1,3 +1,13 @@
+2005-03-06  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/predicates.md (branch_comparison_operator): Remove
+       redundant match_code test.
+       (scc_comparison_operator): Swap match_operand and match_code
+       tests.
+       (branch_positive_comparison_operator): Same.
+       (trap_comparison_operator): Use comparison_operator and swap with
+       match_code test.
+
 2005-03-06  Marek Michalkiewicz  <marekm@amelek.gda.pl>
 
        PR target/20288
index 0f395612c3c03c699b30e29f14f9a3cff506c547..5bf3e1765fe3e7256e36d88581d85a0eeda2a88d 100644 (file)
 ;; instruction.  We check the opcode against the mode of the CC value.
 ;; validate_condition_mode is an assertion.
 (define_predicate "branch_comparison_operator"
-  (and (match_code "eq,ne,le,lt,ge,gt,leu,ltu,geu,gtu,unordered,ordered,unge,unle")
-       (and (match_operand 0 "comparison_operator")
-           (and (match_test "GET_MODE_CLASS (GET_MODE (XEXP (op, 0))) == MODE_CC")
-                (match_test "validate_condition_mode (GET_CODE (op),
-                                                      GET_MODE (XEXP (op, 0))),
-                             1")))))
+   (and (match_operand 0 "comparison_operator")
+       (and (match_test "GET_MODE_CLASS (GET_MODE (XEXP (op, 0))) == MODE_CC")
+            (match_test "validate_condition_mode (GET_CODE (op),
+                                                  GET_MODE (XEXP (op, 0))),
+                         1"))))
 
 ;; Return 1 if OP is a comparison operation that is valid for an SCC insn --
 ;; it must be a positive comparison.
 (define_predicate "scc_comparison_operator"
-  (and (match_code "eq,lt,gt,ltu,gtu,unordered")
-       (match_operand 0 "branch_comparison_operator")))
+  (and (match_operand 0 "branch_comparison_operator")
+       (match_code "eq,lt,gt,ltu,gtu,unordered")))
 
 ;; Return 1 if OP is a comparison operation that is valid for a branch
 ;; insn, which is true if the corresponding bit in the CC register is set.
 (define_predicate "branch_positive_comparison_operator"
-  (and (match_code "eq,lt,gt,ltu,gtu,unordered")
-       (match_operand 0 "branch_comparison_operator")))
+  (and (match_operand 0 "branch_comparison_operator")
+       (match_code "eq,lt,gt,ltu,gtu,unordered")))
 
 ;; Return 1 is OP is a comparison operation that is valid for a trap insn.
 (define_predicate "trap_comparison_operator"
-  (and (match_code "eq,ne,le,lt,ge,gt,leu,ltu,geu,gtu")
-       (match_test "(mode == VOIDmode || mode == GET_MODE (op))
-                   && COMPARISON_P (op)")))
+   (and (match_operand 0 "comparison_operator")
+       (match_code "eq,ne,le,lt,ge,gt,leu,ltu,geu,gtu")))
 
 ;; Return 1 if OP is a load multiple operation, known to be a PARALLEL.
 (define_predicate "load_multiple_operation"