diff options
Diffstat (limited to 'gcc/config/i386/sse.md')
-rw-r--r-- | gcc/config/i386/sse.md | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 7e2aa3f..8adea02 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -24879,7 +24879,8 @@ (match_operand:V_128_256 2 "nonimmediate_operand" "xm,x")))] "TARGET_XOP" "vpcmov\t{%3, %2, %1, %0|%0, %1, %2, %3}" - [(set_attr "type" "sse4arg")]) + [(set_attr "type" "sse4arg") + (set_attr "mode" "<sseinsnmode>")]) ;; Recognize XOP's vpcmov from canonical (xor (and (xor t f) c) f) (define_split @@ -25797,10 +25798,6 @@ "TARGET_XOP" "vpcom%Y1<ssemodesuffix>\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "sse4arg") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") (set_attr "mode" "TI")]) (define_insn "xop_maskcmp_uns<mode>3" @@ -25810,11 +25807,7 @@ (match_operand:VI_128 3 "nonimmediate_operand" "xm")]))] "TARGET_XOP" "vpcom%Y1u<ssemodesuffix>\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) ;; Version of pcom*u* that is called from the intrinsics that allows pcomequ* @@ -25829,10 +25822,7 @@ UNSPEC_XOP_UNSIGNED_CMP))] "TARGET_XOP" "vpcom%Y1u<ssemodesuffix>\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) ;; Pcomtrue and pcomfalse support. These are useless instructions, but are @@ -25850,10 +25840,7 @@ ? "vpcomtrue<ssemodesuffix>\t{%2, %1, %0|%0, %1, %2}" : "vpcomfalse<ssemodesuffix>\t{%2, %1, %0|%0, %1, %2}"); } - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) (define_insn "xop_vpermil2<mode>3" @@ -25867,7 +25854,6 @@ "TARGET_XOP" "vpermil2<ssemodesuffix>\t{%4, %3, %2, %1, %0|%0, %1, %2, %3, %4}" [(set_attr "type" "sse4arg") - (set_attr "length_immediate" "1") (set_attr "mode" "<MODE>")]) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |