[X86][SSE] canonicalizeShuffleWithBinOps - add PERMILPS/PERMILPD + PERMPD/PERMQ ...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 16 Mar 2021 12:31:39 +0000 (12:31 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 16 Mar 2021 13:52:08 +0000 (13:52 +0000)
commit64687f2cc3f743a3e9073a4d7633d3691caaf18e
tree17a1528ddf18780bc62cbef904730ebb83937a68
parent43f2d269b3830e643472c6a9993b2d007bfaad02
[X86][SSE] canonicalizeShuffleWithBinOps - add PERMILPS/PERMILPD + PERMPD/PERMQ + INSERTPS handling.

Bail if the INSERTPS would introduce zeros across the binop.
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/haddsub-undef.ll
llvm/test/CodeGen/X86/horizontal-sum.ll
llvm/test/CodeGen/X86/shuffle-vs-trunc-256.ll