Hello, `vpcmpeqd' insn is only available in AVX2, however [1] added check for AVX instead. Looks like a typo.
Patch in the bottom fixes that. Bootstrapped, regtest still run. Is it ok for main trunk if pass? gcc/ * config/i386/i386.c (standard_sse_constant_opcode): Emit vpcmpeqd if AVX2 is enabled. [1] - https://gcc.gnu.org/ml/gcc-cvs/2011-09/msg00318.html -- Thanks, K commit e30c86b06968416e7401a113b866ae353311aa10 Author: Kirill Yukhin <kirill.yuk...@intel.com> Date: Wed Mar 23 14:08:07 2016 +0300 AVX2. Emit vpcmpeqd for const_m1 only if AVX2 is enabled. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 1639704..7f5db75 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -10859,7 +10859,7 @@ standard_sse_constant_opcode (rtx_insn *insn, rtx x) || get_attr_mode (insn) == MODE_V8DF || get_attr_mode (insn) == MODE_V16SF) return "vpternlogd\t{$0xFF, %g0, %g0, %g0|%g0, %g0, %g0, 0xFF}"; - if (TARGET_AVX) + if (TARGET_AVX2) return "vpcmpeqd\t%0, %0, %0"; else return "pcmpeqd\t%0, %0";