[llvm] [LV] Vectorize conditional scalar assignments (PR #158088)
Mel Chen via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 26 01:16:44 PST 2025
================
@@ -1118,7 +1143,11 @@ bool RecurrenceDescriptor::isReductionPHI(PHINode *Phi, Loop *TheLoop,
<< "\n");
return true;
}
-
+ if (AddReductionVar(Phi, RecurKind::FindLast, TheLoop, FMF, RedDes, DB, AC,
+ DT, SE)) {
+ LLVM_DEBUG(dbgs() << "Found a FindLast reduction PHI." << *Phi << "\n");
+ return true;
+ }
----------------
Mel-Chen wrote:
We can remove
```
if (AddReductionVar(Phi, RecurKind::FindLastIVSMax, TheLoop, FMF, RedDes, DB,
AC, DT, SE)) {
LLVM_DEBUG(dbgs() << "Found a FindLastIV reduction PHI." << *Phi << "\n");
return true;
}
if (AddReductionVar(Phi, RecurKind::FindFirstIVSMin, TheLoop, FMF, RedDes, DB,
AC, DT, SE)) {
LLVM_DEBUG(dbgs() << "Found a FindFirstIV reduction PHI." << *Phi << "\n");
return true;
}
```
and replace them with this code.
https://github.com/llvm/llvm-project/pull/158088
More information about the llvm-commits
mailing list