Commit 4b54ab97 by Ilya Tocar Committed by Ilya Tocar

re PR target/64386 (ICE: in extract_insn, at recog.c:2327 (unrecognizable insn) with -mavx512bw)

PR target/64386

gcc/
	PR target/64386
	* config/i386/i386.c (ix86_expand_sse_cmp): Handle V64QImode,
	V32HImode.

testsuite/ 
	* gcc.target/i386/pr64386.c: New test.

From-SVN: r219600
parent c67917b6
2014-01-14 Ilya Tocar <ilya.tocar@intel.com>
PR target/64386
* config/i386/i386.c (ix86_expand_sse_cmp): Handle V64QImode,
V32HImode.
2014-01-14 Ilya Tocar <ilya.tocar@intel.com>
PR target/64393
* common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VBMI_SET):
Enable AVX512BW.
......
......@@ -21318,6 +21318,14 @@ ix86_expand_sse_cmp (rtx dest, enum rtx_code code, rtx cmp_op0, rtx cmp_op1,
switch (cmp_ops_mode)
{
case V64QImode:
gcc_assert (TARGET_AVX512BW);
gen = code == GT ? gen_avx512bw_gtv64qi3 : gen_avx512bw_eqv64qi3_1;
break;
case V32HImode:
gcc_assert (TARGET_AVX512BW);
gen = code == GT ? gen_avx512bw_gtv32hi3 : gen_avx512bw_eqv32hi3_1;
break;
case V16SImode:
gen = code == GT ? gen_avx512f_gtv16si3 : gen_avx512f_eqv16si3_1;
break;
2014-01-14 Ilya Tocar <ilya.tocar@intel.com>
PR target/64386
* gcc.target/i386/pr64386.c: New test.
2014-01-14 Ilya Tocar <ilya.tocar@intel.com>
PR target/64393
* gcc.target/i386/pr64393.c: New test.
......
/* { dg-do compile } */
/* { dg-options "-O -ftree-vectorize -mavx512bw" } */
char ac[64], bc[64], ec[64];
void fc (void)
{
int i;
for (i = 0; i < 64; i++)
{
char e = ec[i];
ac[i] = bc[i] ? : e;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment