summaryrefslogtreecommitdiff
path: root/gcc/config/i386/sse.md
diff options
context:
space:
mode:
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-16 08:33:04 +0000
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-16 08:33:04 +0000
commit5bd1ff1d8d07622d77c1b500f8d864c56ae112e7 (patch)
treecd4538377b7166f7b8b61b5f4152d76e91937df0 /gcc/config/i386/sse.md
parent6c8908011e1e0177dc230a6091492f2bcd3b5bdc (diff)
downloadgcc-5bd1ff1d8d07622d77c1b500f8d864c56ae112e7.tar.gz
* config/i386/i386.md: Remove unneeded empty conditions and
preparation statements from expanders. * config/i386/mmx.md: Ditto. * config/i386/sse.md: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164329 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/i386/sse.md')
-rw-r--r--gcc/config/i386/sse.md119
1 files changed, 48 insertions, 71 deletions
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index a3488cf4b74..0a116aa8370 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -508,30 +508,26 @@
(unspec:SSEMODEF2P
[(match_operand:SSEMODEF2P 1 "register_operand" "")]
UNSPEC_MOVNT))]
- "SSE_VEC_FLOAT_MODE_P (<MODE>mode)"
- "")
+ "SSE_VEC_FLOAT_MODE_P (<MODE>mode)")
(define_expand "storent<mode>"
[(set (match_operand:MODEF 0 "memory_operand" "")
(unspec:MODEF
[(match_operand:MODEF 1 "register_operand" "")]
UNSPEC_MOVNT))]
- "TARGET_SSE4A"
- "")
+ "TARGET_SSE4A")
(define_expand "storentv2di"
[(set (match_operand:V2DI 0 "memory_operand" "")
(unspec:V2DI [(match_operand:V2DI 1 "register_operand" "")]
UNSPEC_MOVNT))]
- "TARGET_SSE2"
- "")
+ "TARGET_SSE2")
(define_expand "storentsi"
[(set (match_operand:SI 0 "memory_operand" "")
(unspec:SI [(match_operand:SI 1 "register_operand" "")]
UNSPEC_MOVNT))]
- "TARGET_SSE2"
- "")
+ "TARGET_SSE2")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
@@ -734,8 +730,7 @@
[(set (match_operand:V2DF 0 "register_operand" "")
(div:V2DF (match_operand:V2DF 1 "register_operand" "")
(match_operand:V2DF 2 "nonimmediate_operand" "")))]
- "TARGET_SSE2"
- "")
+ "TARGET_SSE2")
(define_insn "*avx_div<mode>3"
[(set (match_operand:SSEMODEF2P 0 "register_operand" "=x")
@@ -3106,10 +3101,8 @@
(vec_select:V2SF
(match_dup 2)
(parallel [(const_int 0) (const_int 1)]))))]
- "TARGET_SSE2"
-{
- operands[2] = gen_reg_rtx (V4SFmode);
-})
+ "TARGET_SSE2"
+ "operands[2] = gen_reg_rtx (V4SFmode);")
(define_expand "vec_unpacks_lo_v4sf"
[(set (match_operand:V2DF 0 "register_operand" "")
@@ -3180,8 +3173,8 @@
(vec_select:V2SI
(match_dup 2)
(parallel [(const_int 0) (const_int 1)]))))]
- "TARGET_SSE2"
- "operands[2] = gen_reg_rtx (V4SImode);")
+ "TARGET_SSE2"
+ "operands[2] = gen_reg_rtx (V4SImode);")
(define_expand "vec_unpacks_float_lo_v4si"
[(set (match_operand:V2DF 0 "register_operand" "")
@@ -3210,7 +3203,7 @@
(and:V2DF (match_dup 7) (match_dup 4)))
(set (match_operand:V2DF 0 "register_operand" "")
(plus:V2DF (match_dup 6) (match_dup 8)))]
- "TARGET_SSE2"
+ "TARGET_SSE2"
{
REAL_VALUE_TYPE TWO32r;
rtx x;
@@ -4467,8 +4460,7 @@
(match_dup 1))
(parallel [(const_int 0) (const_int 4)
(const_int 2) (const_int 6)])))]
- "TARGET_AVX"
- "")
+ "TARGET_AVX")
(define_expand "avx_unpcklpd256"
[(set (match_operand:V4DF 0 "register_operand" "")
@@ -4478,8 +4470,7 @@
(match_operand:V4DF 2 "nonimmediate_operand" ""))
(parallel [(const_int 0) (const_int 4)
(const_int 2) (const_int 6)])))]
- "TARGET_AVX"
- "")
+ "TARGET_AVX")
(define_insn "*avx_unpcklpd256"
[(set (match_operand:V4DF 0 "register_operand" "=x,x")
@@ -4813,9 +4804,7 @@
(parallel [(const_int 1)])))]
"TARGET_SSE2 && reload_completed"
[(set (match_dup 0) (match_dup 1))]
-{
- operands[1] = adjust_address (operands[1], DFmode, 8);
-})
+ "operands[1] = adjust_address (operands[1], DFmode, 8);")
;; Avoid combining registers from different units in a single alternative,
;; see comment above inline_secondary_memory_needed function in i386.c
@@ -4910,9 +4899,7 @@
(match_operand:DF 1 "register_operand" "")))]
"TARGET_SSE2 && reload_completed"
[(set (match_dup 0) (match_dup 1))]
-{
- operands[0] = adjust_address (operands[0], DFmode, 8);
-})
+ "operands[0] = adjust_address (operands[0], DFmode, 8);")
(define_expand "sse2_loadlpd_exp"
[(set (match_operand:V2DF 0 "nonimmediate_operand" "")
@@ -4975,9 +4962,7 @@
(vec_select:DF (match_dup 0) (parallel [(const_int 1)]))))]
"TARGET_SSE2 && reload_completed"
[(set (match_dup 0) (match_dup 1))]
-{
- operands[0] = adjust_address (operands[0], DFmode, 8);
-})
+ "operands[0] = adjust_address (operands[0], DFmode, 8);")
;; Not sure these two are ever used, but it doesn't hurt to have
;; them. -aoliva
@@ -6127,20 +6112,20 @@
if (TARGET_SSE4_1)
ix86_fixup_binary_operands_no_copy (SMAX, <MODE>mode, operands);
else
- {
- rtx xops[6];
- bool ok;
-
- xops[0] = operands[0];
- xops[1] = operands[1];
- xops[2] = operands[2];
- xops[3] = gen_rtx_GT (VOIDmode, operands[1], operands[2]);
- xops[4] = operands[1];
- xops[5] = operands[2];
- ok = ix86_expand_int_vcond (xops);
- gcc_assert (ok);
- DONE;
- }
+ {
+ rtx xops[6];
+ bool ok;
+
+ xops[0] = operands[0];
+ xops[1] = operands[1];
+ xops[2] = operands[2];
+ xops[3] = gen_rtx_GT (VOIDmode, operands[1], operands[2]);
+ xops[4] = operands[1];
+ xops[5] = operands[2];
+ ok = ix86_expand_int_vcond (xops);
+ gcc_assert (ok);
+ DONE;
+ }
})
(define_insn "*sse4_1_<code><mode>3"
@@ -6183,20 +6168,20 @@
if (TARGET_SSE4_1)
ix86_fixup_binary_operands_no_copy (UMAX, V4SImode, operands);
else
- {
- rtx xops[6];
- bool ok;
-
- xops[0] = operands[0];
- xops[1] = operands[1];
- xops[2] = operands[2];
- xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
- xops[4] = operands[1];
- xops[5] = operands[2];
- ok = ix86_expand_int_vcond (xops);
- gcc_assert (ok);
- DONE;
- }
+ {
+ rtx xops[6];
+ bool ok;
+
+ xops[0] = operands[0];
+ xops[1] = operands[1];
+ xops[2] = operands[2];
+ xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
+ xops[4] = operands[1];
+ xops[5] = operands[2];
+ ok = ix86_expand_int_vcond (xops);
+ gcc_assert (ok);
+ DONE;
+ }
})
(define_insn "*sse4_1_<code><mode>3"
@@ -7313,9 +7298,7 @@
|| MEM_P (operands [0])
|| !GENERAL_REGNO_P (true_regnum (operands [0])))"
[(set (match_dup 0) (match_dup 1))]
-{
- operands[1] = gen_rtx_REG (SImode, REGNO (operands[1]));
-})
+ "operands[1] = gen_rtx_REG (SImode, REGNO (operands[1]));")
(define_insn_and_split "*vec_ext_v4si_mem"
[(set (match_operand:SI 0 "register_operand" "=r")
@@ -7338,8 +7321,7 @@
(vec_select:DI
(match_operand:V2DI 1 "register_operand" "")
(parallel [(const_int 0)])))]
- "TARGET_SSE"
- "")
+ "TARGET_SSE")
(define_insn "*sse2_storeq_rex64"
[(set (match_operand:DI 0 "nonimmediate_operand" "=mx,*r,r")
@@ -7374,9 +7356,7 @@
|| MEM_P (operands [0])
|| !GENERAL_REGNO_P (true_regnum (operands [0])))"
[(set (match_dup 0) (match_dup 1))]
-{
- operands[1] = gen_rtx_REG (DImode, REGNO (operands[1]));
-})
+ "operands[1] = gen_rtx_REG (DImode, REGNO (operands[1]));")
(define_insn "*vec_extractv2di_1_rex64_avx"
[(set (match_operand:DI 0 "nonimmediate_operand" "=m,x,x,r")
@@ -8055,8 +8035,7 @@
(match_operand:V16QI 2 "register_operand" "")
(match_dup 0)]
UNSPEC_MASKMOV))]
- "TARGET_SSE2"
- "")
+ "TARGET_SSE2")
(define_insn "*sse2_maskmovdqu"
[(set (mem:V16QI (match_operand:SI 0 "register_operand" "D"))
@@ -11508,9 +11487,7 @@
"&& reload_completed && REG_P (operands[1])"
[(set (match_dup 2) (vec_duplicate:<avxhalfvecmode> (match_dup 1)))
(set (match_dup 0) (vec_concat:AVX256MODE24P (match_dup 2) (match_dup 2)))]
-{
- operands[2] = gen_rtx_REG (<avxhalfvecmode>mode, REGNO (operands[0]));
-}
+ "operands[2] = gen_rtx_REG (<avxhalfvecmode>mode, REGNO (operands[0]));"
[(set_attr "type" "ssemov")
(set_attr "prefix_extra" "1")
(set_attr "prefix" "vex")