| Issue |
173035
|
| Summary |
[VectorCombine] foldShuffleOfBinops - support multiple uses of shuffled binop
|
| Labels |
good first issue,
missed-optimization,
llvm::vectorcombine
|
| Assignees |
|
| Reporter |
RKSimon
|
The "shuffle (op), (op)" -> "op (shuffle), (shuffle)" fold is currently limited by a mOneUse check:
https://github.com/llvm/llvm-project/blob/ba55ef32ef9214804b421090767a27f14abd9439/llvm/lib/Transforms/Vectorize/VectorCombine.cpp#L2395-L2400
We should try to remove the m_OneUse limits (for both binop and castop cases) and adjust the NewCost accordingly - similar to what happens in foldShuffleOfCastops
A large portion of this task will be creating test coverage.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs