[X86][AVX512] lower1BitShuffle - fold broadcast(setcc(x,y)) -> setcc(broadcast(x...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Mon, 21 Mar 2022 17:38:06 +0000 (17:38 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Mon, 21 Mar 2022 17:42:49 +0000 (17:42 +0000)
commit5fd945166862377be390948c9ab7dab2f47df217
tree8b4528a664e1dab6c303d5deedb731b047bd7032
parent5cfb1100902eba94ae8a215900aed3b92a87141a
[X86][AVX512] lower1BitShuffle - fold broadcast(setcc(x,y)) -> setcc(broadcast(x),broadcast(y)) (PR52500)

AVX512 has excellent broadcast ops for everything but vXi1 bool vectors - so if we're broadcasting a comparison result, see if we can broadcast the comparison operands instead.
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/vector-shuffle-v1.ll