aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2008-09-10 08:23:57 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2008-09-10 08:23:57 +0200
commit4e7f50e5e4100546f2579cc0a8779a5cad4061e2 (patch)
tree710f7b5428bc41a8e0029ae448e74ccbd5eb0658 /gcc/config
parent655b3d43f9240d4df2df70edd3175d14014df7ff (diff)
downloadgcc-4e7f50e5e4100546f2579cc0a8779a5cad4061e2.zip
gcc-4e7f50e5e4100546f2579cc0a8779a5cad4061e2.tar.gz
gcc-4e7f50e5e4100546f2579cc0a8779a5cad4061e2.tar.bz2
i386.md (SWI32): New mode iterator.
* 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
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/i386/i386.md19
1 files changed, 11 insertions, 8 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 976bc72..66d1866 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -652,6 +652,9 @@
;; 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")])
@@ -14271,8 +14274,8 @@
(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"
@@ -14286,8 +14289,8 @@
(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"
@@ -14302,8 +14305,8 @@
[(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
@@ -14320,8 +14323,8 @@
[(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