diff options
author | Jakub Jelinek <jakub@redhat.com> | 2008-09-10 08:23:57 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2008-09-10 08:23:57 +0200 |
commit | 4e7f50e5e4100546f2579cc0a8779a5cad4061e2 (patch) | |
tree | 710f7b5428bc41a8e0029ae448e74ccbd5eb0658 /gcc/config | |
parent | 655b3d43f9240d4df2df70edd3175d14014df7ff (diff) | |
download | gcc-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.md | 19 |
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 |