re PR target/91560 (Try harder for AVX non-AVX2 cross-lane permutations)
authorJakub Jelinek <jakub@redhat.com>
Thu, 29 Aug 2019 09:22:57 +0000 (11:22 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 29 Aug 2019 09:22:57 +0000 (11:22 +0200)
commit4bf4c103ee457d8fb6872a438de38ec4340cf85f
tree22e6169685a0e1b219269b113b7c1f184fb54836
parent1d9cd701ec31686dbd037e0fe264c8738d993e41
re PR target/91560 (Try harder for AVX non-AVX2 cross-lane permutations)

PR target/91560
* config/i386/i386-expand.c (expand_vec_perm_movs,
expand_vec_perm_blend, expand_vec_perm_vpermil,
expand_vec_perm_pshufb, expand_vec_perm_1,
expand_vec_perm_pshuflw_pshufhw, expand_vec_perm_palignr,
expand_vec_perm_interleave2, expand_vec_perm_vpermq_perm_1,
expand_vec_perm_vperm2f128, expand_vec_perm_interleave3,
expand_vec_perm_vperm2f128_vblend, expand_vec_perm_2vperm2f128_vshuf,
expand_vec_perm_even_odd, expand_vec_perm_broadcast): Adjust function
comments - replace ix86_expand_vec_perm_builtin_1 with
ix86_expand_vec_perm_const_1.
(expand_vec_perm2_vperm2f128_vblend): New function.
(ix86_expand_vec_perm_const_1): New forward declaration.  Call
expand_vec_perm2_vperm2f128_vblend as last resort.
(canonicalize_perm): Formatting fix.

* gcc.dg/torture/vshuf-8.inc: Add two further permutations.

From-SVN: r275027
gcc/ChangeLog
gcc/config/i386/i386-expand.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/vshuf-8.inc