* config/h8300/h8300.md (two anonymous patterns): New.
authorKazu Hirata <kazu@cs.umass.edu>
Tue, 28 May 2002 12:36:03 +0000 (12:36 +0000)
committerKazu Hirata <kazu@gcc.gnu.org>
Tue, 28 May 2002 12:36:03 +0000 (12:36 +0000)
From-SVN: r53955

gcc/ChangeLog
gcc/config/h8300/h8300.md

index f7a4c6040e7ee27eff0c274949af94337f2becb3..95ce7d2696c30cb98cc6e73ca457f5b7369ac844 100644 (file)
@@ -1,3 +1,7 @@
+2002-05-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md (two anonymous patterns): New.
+
 2002-05-28  David S. Miller  <davem@redhat.com>
 
        * config/sparc/sparc.md (cpu): Tidy.
index 5dad99612a6b7c7739f6c500f6cfa097100f14ae..1359a01ad78c87c573d931f747730c7261aa5fcf 100644 (file)
   "mov.w\\t%f2,%e0"
   [(set_attr "cc" "clobber")
    (set_attr "length" "2")])
+
+(define_insn_and_split ""
+  [(set (pc)
+       (if_then_else (eq (zero_extract:SI (subreg:SI (match_operand:QI 0 "register_operand" "") 0)
+                                          (const_int 1)
+                                          (const_int 7))
+                         (const_int 0))
+                     (label_ref (match_operand 1 "" ""))
+                     (pc)))]
+  ""
+  "#"
+  ""
+  [(set (cc0)
+       (match_dup 0))
+   (set (pc)
+       (if_then_else (ge (cc0)
+                         (const_int 0))
+                     (label_ref (match_dup 1))
+                     (pc)))]
+  "")
+
+(define_insn_and_split ""
+  [(set (pc)
+       (if_then_else (ne (zero_extract:SI (subreg:SI (match_operand:QI 0 "register_operand" "") 0)
+                                          (const_int 1)
+                                          (const_int 7))
+                         (const_int 0))
+                     (label_ref (match_operand 1 "" ""))
+                     (pc)))]
+  ""
+  "#"
+  ""
+  [(set (cc0)
+       (match_dup 0))
+   (set (pc)
+       (if_then_else (lt (cc0)
+                         (const_int 0))
+                     (label_ref (match_dup 1))
+                     (pc)))]
+  "")