Support 2-instruction vector shuffle for V4SI/V4SF in ix86_expand_vec_perm_const_1.
authorliuhongt <hongtao.liu@intel.com>
Wed, 21 Sep 2022 06:56:08 +0000 (14:56 +0800)
committerliuhongt <hongtao.liu@intel.com>
Mon, 26 Sep 2022 03:20:46 +0000 (11:20 +0800)
commit3db8e9c2422d924a958336fd0871b24cce3e65d1
tree65ef5d298143750d8328fe627a80ca4d932f28df
parentde613c6295ea50d75167eaf89f41074a69298108
Support 2-instruction vector shuffle for V4SI/V4SF in ix86_expand_vec_perm_const_1.

2022-09-23  Hongtao Liu  <hongtao.liu@intel.com>
    Liwei Xu  <liwei.xu@intel.com>

gcc/ChangeLog:

PR target/53346
* config/i386/i386-expand.cc (expand_vec_perm_shufps_shufps):
New function.
(ix86_expand_vec_perm_const_1): Insert
expand_vec_perm_shufps_shufps at the end of 2-instruction
expand sequence.

gcc/testsuite/ChangeLog:

* gcc.target/i386/pr53346-1.c: New test.
* gcc.target/i386/pr53346-2.c: New test.
* gcc.target/i386/pr53346-3.c: New test.
* gcc.target/i386/pr53346-4.c: New test.
gcc/config/i386/i386-expand.cc
gcc/testsuite/gcc.target/i386/pr53346-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr53346-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr53346-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr53346-4.c [new file with mode: 0644]