Add combine splitter to transform vpternlogd/vpcmpeqd/vpxor/vblendvps to vblendvps...
authorHaochen Jiang <haochen.jiang@intel.com>
Thu, 2 Dec 2021 07:30:17 +0000 (15:30 +0800)
committerliuhongt <hongtao.liu@intel.com>
Fri, 17 Dec 2021 05:56:07 +0000 (13:56 +0800)
commit456b53654a3e3cc550c24f2cb0e37e7fdfadf68e
tree3488f4f0f91c8288f3d7edfe41d2e3849aa26ef2
parent79a89108dd352cd9288f5de35481b1280c7588a5
Add combine splitter to transform vpternlogd/vpcmpeqd/vpxor/vblendvps to vblendvps for ~op0

gcc/ChangeLog:

PR target/100738
* config/i386/sse.md (*avx_cmp<mode>3_lt, *avx_cmp<mode>3_ltint):
Remove MEM_P restriction and add force_reg for operands[2].
(*avx_cmp<mode>3_ltint_not): Add new define_insn_and_split.

gcc/testsuite/ChangeLog:

PR target/100738
* g++.target/i386/avx512vl-pr100738-1.C: New test.
gcc/config/i386/sse.md
gcc/testsuite/g++.target/i386/avx512vl-pr100738-1.C [new file with mode: 0755]