From 2185b58266f1c4b0b14a32ef1585f129ae42d9db Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 20 Oct 2017 16:31:03 +0200 Subject: [PATCH] i386.md (isa): Remove fma_avx512f. * config/i386/i386.md (isa): Remove fma_avx512f. * config/i386/sse.md (_fmadd__mask, _fmadd__mask3, _fmsub__mask, _fmsub__mask3, _fnmadd__mask, _fnmadd__mask3, _fnmsub__mask, _fnmsub__mask3, _fmaddsub__mask, _fmaddsub__mask3, _fmsubadd__mask, _fmsubadd__mask3): Remove isa attribute. (*vec_widen_umult_even_v16si, *vec_widen_smult_even_v16si): Likewise. (avx512bw_dbpsadbw): Likewise. From-SVN: r253939 --- gcc/ChangeLog | 19 +++++++++++++++++ gcc/config/i386/i386.md | 4 +--- gcc/config/i386/sse.md | 45 ++++++++++++++--------------------------- 3 files changed, 35 insertions(+), 33 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 42fc979fcf1..1274635d19d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,22 @@ +2017-10-20 Jakub Jelinek + + * config/i386/i386.md (isa): Remove fma_avx512f. + * config/i386/sse.md (_fmadd__mask, + _fmadd__mask3, + _fmsub__mask, + _fmsub__mask3, + _fnmadd__mask, + _fnmadd__mask3, + _fnmsub__mask, + _fnmsub__mask3, + _fmaddsub__mask, + _fmaddsub__mask3, + _fmsubadd__mask, + _fmsubadd__mask3): Remove isa attribute. + (*vec_widen_umult_even_v16si, + *vec_widen_smult_even_v16si): Likewise. + (avx512bw_dbpsadbw): Likewise. + 2017-10-20 Igor Tsimbalist * extend.texi: Add 'nocf_check' documentation. diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index d9097211713..8c576a2e036 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -798,7 +798,7 @@ (define_attr "isa" "base,x64,x64_sse4,x64_sse4_noavx,x64_avx,nox64, sse2,sse2_noavx,sse3,sse4,sse4_noavx,avx,noavx, avx2,noavx2,bmi,bmi2,fma4,fma,avx512f,noavx512f, - fma_avx512f,avx512bw,noavx512bw,avx512dq,noavx512dq, + avx512bw,noavx512bw,avx512dq,noavx512dq, avx512vl,noavx512vl,x64_avx512dq,x64_avx512bw" (const_string "base")) @@ -832,8 +832,6 @@ (eq_attr "isa" "fma") (symbol_ref "TARGET_FMA") (eq_attr "isa" "avx512f") (symbol_ref "TARGET_AVX512F") (eq_attr "isa" "noavx512f") (symbol_ref "!TARGET_AVX512F") - (eq_attr "isa" "fma_avx512f") - (symbol_ref "TARGET_FMA || TARGET_AVX512F") (eq_attr "isa" "avx512bw") (symbol_ref "TARGET_AVX512BW") (eq_attr "isa" "noavx512bw") (symbol_ref "!TARGET_AVX512BW") (eq_attr "isa" "avx512dq") (symbol_ref "TARGET_AVX512DQ") diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 2ddd2970eeb..35e4bc95c4a 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -3713,8 +3713,7 @@ "@ vfmadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" - [(set_attr "isa" "fma_avx512f,fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "_fmadd__mask3" @@ -3728,8 +3727,7 @@ (match_operand: 4 "register_operand" "Yk")))] "TARGET_AVX512F" "vfmadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" - [(set_attr "isa" "fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "*fma_fmsub_" @@ -3779,8 +3777,7 @@ "@ vfmsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" - [(set_attr "isa" "fma_avx512f,fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "_fmsub__mask3" @@ -3795,8 +3792,7 @@ (match_operand: 4 "register_operand" "Yk")))] "TARGET_AVX512F && " "vfmsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" - [(set_attr "isa" "fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "*fma_fnmadd_" @@ -3846,8 +3842,7 @@ "@ vfnmadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfnmadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" - [(set_attr "isa" "fma_avx512f,fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "_fnmadd__mask3" @@ -3862,8 +3857,7 @@ (match_operand: 4 "register_operand" "Yk")))] "TARGET_AVX512F && " "vfnmadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" - [(set_attr "isa" "fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "*fma_fnmsub_" @@ -3916,8 +3910,7 @@ "@ vfnmsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfnmsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" - [(set_attr "isa" "fma_avx512f,fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "_fnmsub__mask3" @@ -3933,8 +3926,7 @@ (match_operand: 4 "register_operand" "Yk")))] "TARGET_AVX512F" "vfnmsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" - [(set_attr "isa" "fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) ;; FMA parallel floating point multiply addsub and subadd operations. @@ -4018,8 +4010,7 @@ "@ vfmaddsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmaddsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" - [(set_attr "isa" "fma_avx512f,fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "_fmaddsub__mask3" @@ -4034,8 +4025,7 @@ (match_operand: 4 "register_operand" "Yk")))] "TARGET_AVX512F" "vfmaddsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" - [(set_attr "isa" "fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "*fma_fmsubadd_" @@ -4088,8 +4078,7 @@ "@ vfmsubadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmsubadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" - [(set_attr "isa" "fma_avx512f,fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) (define_insn "_fmsubadd__mask3" @@ -4105,8 +4094,7 @@ (match_operand: 4 "register_operand" "Yk")))] "TARGET_AVX512F" "vfmsubadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" - [(set_attr "isa" "fma_avx512f") - (set_attr "type" "ssemuladd") + [(set_attr "type" "ssemuladd") (set_attr "mode" "")]) ;; FMA3 floating point scalar intrinsics. These merge result with @@ -10181,8 +10169,7 @@ (const_int 12) (const_int 14)])))))] "TARGET_AVX512F && ix86_binary_operator_ok (MULT, V16SImode, operands)" "vpmuludq\t{%2, %1, %0|%0, %1, %2}" - [(set_attr "isa" "avx512f") - (set_attr "type" "sseimul") + [(set_attr "type" "sseimul") (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -10298,8 +10285,7 @@ (const_int 12) (const_int 14)])))))] "TARGET_AVX512F && ix86_binary_operator_ok (MULT, V16SImode, operands)" "vpmuldq\t{%2, %1, %0|%0, %1, %2}" - [(set_attr "isa" "avx512f") - (set_attr "type" "sseimul") + [(set_attr "type" "sseimul") (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -19630,8 +19616,7 @@ UNSPEC_DBPSADBW))] "TARGET_AVX512BW" "vdbpsadbw\t{%3, %2, %1, %0|%0, %1, %2, %3}" - [(set_attr "isa" "avx") - (set_attr "type" "sselog1") + [(set_attr "type" "sselog1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) -- 2.30.2