aboutsummaryrefslogtreecommitdiff
path: root/gcc/common
diff options
context:
space:
mode:
authorIgor Tsimbalist <igor.v.tsimbalist@intel.com>2017-12-22 12:41:02 +0100
committerIgor Tsimbalist <itsimbal@gcc.gnu.org>2017-12-22 12:41:02 +0100
commitfefab9536e9d986ed0ffbdeeb0ef851578385564 (patch)
tree73e5ce64bfc3c9ce1ec82d3a5a96faaec8eeedd0 /gcc/common
parent170a8bd604a4c960b8a378d50f7cc6c66cbdaf5c (diff)
downloadgcc-fefab9536e9d986ed0ffbdeeb0ef851578385564.zip
gcc-fefab9536e9d986ed0ffbdeeb0ef851578385564.tar.gz
gcc-fefab9536e9d986ed0ffbdeeb0ef851578385564.tar.bz2
This is a follow up patch for pr83488 to fix an error in setting...
This is a follow up patch for pr83488 to fix an error in setting OPTION_MASK_ISA_AVX512VNNI_SET and OPTION_MASK_ISA_AVX512F_SET bits. There were both set in ix86_isa_flags2 while being defined in different ISA sets. Additionally move OPTION_MASK_ISA_AVX512VNNI_SET to ix86_isa_flags as it can be used with OPTION_MASK_ISA_AVX512VL_SET. gcc/ * common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VNNI_SET): Or in OPTION_MASK_ISA_AVX512F_SET. (OPTION_MASK_ISA_AVX512F_UNSET): Or in OPTION_MASK_ISA_AVX512VNNI_UNSET. (ix86_handle_option): Adjust for OPTION_MASK_ISA_AVX512VNNI_*SET being in ix86_isa_flags. * config/i386/i386-builtin.def: Move VNNI builtins from ARGS2 section to ARGS. * config/i386/i386-c.c: Check for OPTION_MASK_ISA_AVX512VNNI in isa_flag instead of isa_flag2. * config/i386/i386.c (ix86_target_string): Move -mavx512vnni from isa_opts2 to isa_opts. * config/i386/i386.opt (mavx512vnni): Move from ix86_isa_flags2 to ix86_isa_flags. From-SVN: r255974
Diffstat (limited to 'gcc/common')
-rw-r--r--gcc/common/config/i386/i386-common.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/gcc/common/config/i386/i386-common.c b/gcc/common/config/i386/i386-common.c
index 5a339f0..421b450 100644
--- a/gcc/common/config/i386/i386-common.c
+++ b/gcc/common/config/i386/i386-common.c
@@ -82,7 +82,8 @@ along with GCC; see the file COPYING3. If not see
#define OPTION_MASK_ISA_AVX5124VNNIW_SET OPTION_MASK_ISA_AVX5124VNNIW
#define OPTION_MASK_ISA_AVX512VBMI2_SET \
(OPTION_MASK_ISA_AVX512VBMI2 | OPTION_MASK_ISA_AVX512F_SET)
-#define OPTION_MASK_ISA_AVX512VNNI_SET OPTION_MASK_ISA_AVX512VNNI
+#define OPTION_MASK_ISA_AVX512VNNI_SET \
+ (OPTION_MASK_ISA_AVX512VNNI | OPTION_MASK_ISA_AVX512F_SET)
#define OPTION_MASK_ISA_AVX512VPOPCNTDQ_SET OPTION_MASK_ISA_AVX512VPOPCNTDQ
#define OPTION_MASK_ISA_RTM_SET OPTION_MASK_ISA_RTM
#define OPTION_MASK_ISA_PRFCHW_SET OPTION_MASK_ISA_PRFCHW
@@ -184,7 +185,8 @@ along with GCC; see the file COPYING3. If not see
(OPTION_MASK_ISA_AVX512F | OPTION_MASK_ISA_AVX512CD_UNSET \
| OPTION_MASK_ISA_AVX512PF_UNSET | OPTION_MASK_ISA_AVX512ER_UNSET \
| OPTION_MASK_ISA_AVX512DQ_UNSET | OPTION_MASK_ISA_AVX512BW_UNSET \
- | OPTION_MASK_ISA_AVX512VL_UNSET | OPTION_MASK_ISA_AVX512VBMI2_UNSET)
+ | OPTION_MASK_ISA_AVX512VL_UNSET | OPTION_MASK_ISA_AVX512VBMI2_UNSET \
+ | OPTION_MASK_ISA_AVX512VNNI_UNSET)
#define OPTION_MASK_ISA_AVX512CD_UNSET OPTION_MASK_ISA_AVX512CD
#define OPTION_MASK_ISA_AVX512PF_UNSET OPTION_MASK_ISA_AVX512PF
#define OPTION_MASK_ISA_AVX512ER_UNSET OPTION_MASK_ISA_AVX512ER
@@ -616,15 +618,13 @@ ix86_handle_option (struct gcc_options *opts,
case OPT_mavx512vnni:
if (value)
{
- opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA_AVX512VNNI_SET;
- opts->x_ix86_isa_flags2_explicit |= OPTION_MASK_ISA_AVX512VNNI_SET;
- opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA_AVX512F_SET;
- opts->x_ix86_isa_flags2_explicit |= OPTION_MASK_ISA_AVX512F_SET;
+ opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512VNNI_SET;
+ opts->x_ix86_isa_flags_explicit |= OPTION_MASK_ISA_AVX512VNNI_SET;
}
else
{
- opts->x_ix86_isa_flags2 &= ~OPTION_MASK_ISA_AVX512VNNI_UNSET;
- opts->x_ix86_isa_flags2_explicit |= OPTION_MASK_ISA_AVX512VNNI_UNSET;
+ opts->x_ix86_isa_flags &= ~OPTION_MASK_ISA_AVX512VNNI_UNSET;
+ opts->x_ix86_isa_flags_explicit |= OPTION_MASK_ISA_AVX512VNNI_UNSET;
}
return true;