[PATCH] Fix avx512vnnivlintrin.h builtins (PR target/83488)

Kirill Yukhin kirill.yukhin@gmail.com
Fri Dec 22 12:51:00 GMT 2017


Hello Jakub,
On 22 Dec 12:05, Jakub Jelinek wrote:
> On Fri, Dec 22, 2017 at 11:41:27AM +0100, Uros Bizjak wrote:
> > > Ok for trunk?
> > 
> > OK.
> 
> On top of this patch and the reason why we needed to move avx512vnni
> from flags2 to flags instead of just:
>      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_AVX512F_SET;
> +          opts->x_ix86_isa_flags_explicit |= OPTION_MASK_ISA_AVX512F_SET;
>          }
> 
> the following patch does:
> 1) adds a testcase (-2.c) where trunk without your patch ICEs, because
> -mno-avx -mavx512vnni didn't enable -mavx512f when it should
> 2) as that is now enabled, there is no need for the avx512vnniintrin.h
> header to work-around that bug
> 3) adds " | OPTION_MASK_ISA_AVX512VL" to builtins that need both avx512vnni
> and avx512vl
> 4) adds a testcase (-3.c) that ICEs without the 3) change, where we allow
> the builtin, but ICE because the underlying insn isn't available
> 
> Will bootstrap/regtest this on x86_64-linux and i686-linux soon, ok for
> trunk if it passes bootstrap/regtest?
Patch is OK if no issues.

--
Thanks, K



More information about the Gcc-patches mailing list