[llvm] [LV] Vectorize selecting last IV of min/max element. (PR #141431)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 18 05:53:59 PST 2025
================
@@ -1251,7 +1251,9 @@ llvm::canParallelizeReductionWhenUnrolling(PHINode &Phi, Loop *L,
RecurrenceDescriptor RdxDesc;
if (!RecurrenceDescriptor::isReductionPHI(&Phi, L, RdxDesc,
/*DemandedBits=*/nullptr,
- /*AC=*/nullptr, /*DT=*/nullptr, SE))
+ /*AC=*/nullptr, /*DT=*/nullptr,
+ SE) ||
+ RdxDesc.isPhiMultiUse())
----------------
ayalz wrote:
```suggestion
/*AC=*/nullptr, /*DT=*/nullptr, SE))
return std::nullopt;
if (RdxDesc.isPhiMultiUse())
return std::nullopt;
```
clearer to check isPhiMultiUse() after isReductionPHI() returned true and initialized RdxDesc?
https://github.com/llvm/llvm-project/pull/141431
More information about the llvm-commits
mailing list