]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
i386.md (SWI32): New mode iterator.
authorJakub Jelinek <jakub@redhat.com>
Wed, 10 Sep 2008 06:23:57 +0000 (08:23 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 10 Sep 2008 06:23:57 +0000 (08:23 +0200)
* config/i386/i386.md (SWI32): New mode iterator.
(jcc_fused_1, jcc_fused_2, jcc_fused_3, jcc_fused_4): Use it instead
of SWI.

From-SVN: r140189

gcc/ChangeLog
gcc/config/i386/i386.md

index d07d85d0e2913291b117255b2d8088e80ce9248d..09aaa2821a4110f7513f0026fd56866f6a3f1d8c 100644 (file)
@@ -1,3 +1,9 @@
+2008-09-10  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/i386/i386.md (SWI32): New mode iterator.
+       (jcc_fused_1, jcc_fused_2, jcc_fused_3, jcc_fused_4): Use it instead
+       of SWI.
+
 2008-09-09  Vladimir Makarov  <vmakarov@redhat.com>
 
        PR rtl-optimization/37435
index 976bc727e45796d14bdabea25f4312a26cc7b1e3..66d186686f77c4407bb98bd6870c685f1940afdd 100644 (file)
 ;; All single word integer modes.
 (define_mode_iterator SWI [QI HI SI (DI "TARGET_64BIT")])
 
+;; Single word integer modes up to SImode.
+(define_mode_iterator SWI32 [QI HI SI])
+
 ;; Instruction suffix for integer modes.
 (define_mode_attr imodesuffix [(QI "b") (HI "w") (SI "l") (DI "q")])
 
 (define_insn "*jcc_fused_1"
   [(set (pc)
        (if_then_else (match_operator 1 "comparison_operator"
-                       [(match_operand:SWI 2 "register_operand" "<r>")
-                        (match_operand:SWI 3 "const0_operand" "")])
+                       [(match_operand:SWI32 2 "register_operand" "<r>")
+                        (match_operand:SWI32 3 "const0_operand" "")])
         (label_ref (match_operand 0 "" ""))
         (pc)))]
   "TARGET_FUSE_CMP_AND_BRANCH && !TARGET_64BIT"
 (define_insn "*jcc_fused_2"
   [(set (pc)
        (if_then_else (match_operator 1 "comparison_operator"
-                       [(match_operand:SWI 2 "register_operand" "<r>")
-                        (match_operand:SWI 3 "const0_operand" "")])
+                       [(match_operand:SWI32 2 "register_operand" "<r>")
+                        (match_operand:SWI32 3 "const0_operand" "")])
         (pc)
         (label_ref (match_operand 0 "" ""))))]
   "TARGET_FUSE_CMP_AND_BRANCH && !TARGET_64BIT"
   [(set (pc)
        (if_then_else
          (match_operator 1 "ix86_comparison_uns_operator"
-           [(match_operand:SWI 2 "nonimmediate_operand" "<r>,m,<r>")
-            (match_operand:SWI 3 "<general_operand>" "<r><i>,<r>,m")])
+           [(match_operand:SWI32 2 "nonimmediate_operand" "<r>,m,<r>")
+            (match_operand:SWI32 3 "<general_operand>" "<r><i>,<r>,m")])
         (label_ref (match_operand 0 "" ""))
         (pc)))]
   "TARGET_FUSE_CMP_AND_BRANCH && !TARGET_64BIT
   [(set (pc)
        (if_then_else
          (match_operator 1 "ix86_comparison_uns_operator"
-           [(match_operand:SWI 2 "nonimmediate_operand" "<r>,m,<r>")
-            (match_operand:SWI 3 "<general_operand>" "<r><i>,<r>,m")])
+           [(match_operand:SWI32 2 "nonimmediate_operand" "<r>,m,<r>")
+            (match_operand:SWI32 3 "<general_operand>" "<r><i>,<r>,m")])
         (pc)
         (label_ref (match_operand 0 "" ""))))]
   "TARGET_FUSE_CMP_AND_BRANCH && !TARGET_64BIT