diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2025-01-03 10:29:07 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-03 10:29:07 +0000 |
commit | e3ec5a728674fd775bb85a7d159acdb4fa1d69c2 (patch) | |
tree | 1de453ed1b397e598548a7142b011855a394b071 /llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp | |
parent | cdad18319425a7bf93cc25b276a7961fe5b1168b (diff) | |
download | llvm-e3ec5a728674fd775bb85a7d159acdb4fa1d69c2.zip llvm-e3ec5a728674fd775bb85a7d159acdb4fa1d69c2.tar.gz llvm-e3ec5a728674fd775bb85a7d159acdb4fa1d69c2.tar.bz2 |
[VectorCombine] foldShuffleOfBinops - fold shuffle(binop(shuffle(x),shuffle(z)),binop(shuffle(y),shuffle(w)) -> binop(shuffle(x,z),shuffle(y,w)) (#120984)
Some patterns (in particular horizontal style patterns) can end up with shuffles straddling both sides of a binop/cmp.
Where individually the folds aren't worth it, by merging the (oneuse) shuffles we can notably reduce the net instruction count and cost.
One of the final steps towards finally addressing #34072
Diffstat (limited to 'llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp')
0 files changed, 0 insertions, 0 deletions