https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68655
--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Author: jakub Date: Fri Dec 4 08:25:24 2015 New Revision: 231247 URL: https://gcc.gnu.org/viewcvs?rev=231247&root=gcc&view=rev Log: PR target/68655 * config/i386/i386.c (canonicalize_vector_int_perm): New function. (expand_vec_perm_1): Use it and recurse if everything else failed. Use nd.perm instead of perm2. (expand_vec_perm_even_odd_1): If testing_p, use gen_raw_REG instead of gen_lowpart for the target. (ix86_expand_vec_perm_const_1): Use canonicalize_vector_int_perm and recurse if everything else failed. * gcc.dg/torture/vshuf-4.inc (TESTS): Add one extra test. * gcc.dg/torture/vshuf-4.inc (TESTS): Add two extra tests. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/torture/vshuf-4.inc trunk/gcc/testsuite/gcc.dg/torture/vshuf-8.inc