[llvm] [SLP] Make getSameOpcode support different instructions if they have same semantics. (PR #112181)
Alexey Bataev via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 22 04:35:26 PDT 2024
================
@@ -14935,7 +15108,7 @@ Value *BoUpSLP::vectorizeTree(TreeEntry *E, bool PostponedPHIs) {
Value *V = Builder.CreateBinOp(
static_cast<Instruction::BinaryOps>(E->getOpcode()), LHS,
RHS);
- propagateIRFlags(V, E->Scalars, VL0, It == MinBWs.end());
+ propagateIRFlags(V, E->Scalars, nullptr, It == MinBWs.end());
----------------
alexey-bataev wrote:
Say, you have something like `{mul nsw, shl, mul nsw, mul nsw}`. For this case you will still emit `mul nsw <4 x >]б b ecause shl will be ignored
https://github.com/llvm/llvm-project/pull/112181
More information about the llvm-commits
mailing list