re PR target/83203 (Inefficient int to avx2 vector conversion)
authorJakub Jelinek <jakub@redhat.com>
Thu, 11 Jan 2018 20:49:40 +0000 (21:49 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 11 Jan 2018 20:49:40 +0000 (21:49 +0100)
commit1ad6e904d4fbad716bc65ac4d0bbdeecf3f552bc
tree77ec76733b526b9d1f30881e7026cbc4c872d8ef
parentc7a61831d6ecec501acf0da0a227bd954e1d8922
re PR target/83203 (Inefficient int to avx2 vector conversion)

PR target/83203
* config/i386/i386.c (ix86_expand_vector_init_one_nonzero): If one_var
is 0, for V{8,16}S[IF] and V[48]D[IF]mode use gen_vec_set<mode>_0.
* config/i386/sse.md (VI8_AVX_AVX512F, VI4F_256_512): New mode
iterators.
(ssescalarmodesuffix): Add 512-bit vectors.  Use "d" or "q" for
integral modes instead of "ss" and "sd".
(vec_set<mode>_0): New define_insns for 256-bit and 512-bit
vectors with 32-bit and 64-bit elements.
(vecdupssescalarmodesuffix): New mode attribute.
(vec_dup<mode>): Use it.

From-SVN: r256556
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/sse.md