https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61618
Bug ID: 61618 Summary: [4.10 Regression]: ICE in expand_vec_perm_pblendv, at config/i386/i386.c with -mavx Product: gcc Version: 4.10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: ubizjak at gmail dot com gcc.dg/torture/vshuf-v8sf.c currently fails with -O2 -mavx: gcc.dg/torture/vshuf-main.inc: In function ‘test_9’: gcc.dg/torture/vshuf-main.inc:15:5: internal compiler error: in expand_vec_perm_pblendv, at config/i386/i386.c:43257 d = __builtin_shuffle (a, b, mask); \ ^ gcc.dg/torture/vshuf-8.inc:12:1: note: in expansion of macro ‘T’ T (9, 13, 11, 10, 15, 8, 5, 14, 8) \ ^ gcc.dg/torture/vshuf-main.inc:28:1: note: in expansion of macro ‘TESTS’ TESTS ^ 0xc6bd88 expand_vec_perm_pblendv /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:43257 0xc6bd88 ix86_expand_vec_perm_const_1 /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:44647 0xca4373 ix86_expand_vec_perm_const(rtx_def**) /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:44768 0xd67b25 gen_vec_perm_constv8sf(rtx_def*, rtx_def*, rtx_def*, rtx_def*) /home/uros/gcc-svn/trunk/gcc/config/i386/sse.md:8985 0x9003f8 maybe_expand_insn(insn_code, unsigned int, expand_operand*) /home/uros/gcc-svn/trunk/gcc/optabs.c:8352 0x907537 expand_vec_perm_1 /home/uros/gcc-svn/trunk/gcc/optabs.c:6626 0x9077da expand_vec_perm(machine_mode, rtx_def*, rtx_def*, rtx_def*, rtx_def*) /home/uros/gcc-svn/trunk/gcc/optabs.c:6667 (gdb) up #2 0x0000000000c6bd89 in expand_vec_perm_pblendv (d=0x7fffffffd410) at /home/uros/gcc-svn/trunk/gcc/config/i386/i386.c:43257 43257 gcc_assert (ok); (gdb) list 43252 43253 for (i = 0; i < nelt; ++i) 43254 dcopy.perm[i] = d->perm[i] & (nelt - 1); 43255 43256 ok = expand_vec_perm_1 (&dcopy); 43257 gcc_assert (ok); 43258 43259 /* Next we put permuted elements into their positions. */ 43260 dcopy1 = *d; 43261 if (which == 2) (gdb)