[llvm] [LV][EVL] Support in-loop reduction using tail folding with EVL. (PR #90184)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 23 12:24:19 PDT 2024
================
@@ -1446,23 +1454,39 @@ bool VPlanTransforms::tryAddExplicitVectorLength(VPlan &Plan) {
for (VPValue *HeaderMask : collectAllHeaderMasks(Plan)) {
for (VPUser *U : collectUsersRecursively(HeaderMask)) {
- auto *MemR = dyn_cast<VPWidenMemoryRecipe>(U);
- if (!MemR)
+ VPRecipeBase *NewRecipe = nullptr;
+ auto *CurRecipe = dyn_cast<VPRecipeBase>(U);
+ if (!CurRecipe || CurRecipe->getNumDefinedValues() > 1)
----------------
fhahn wrote:
Right, but why does it matter? Any recipe that isn't handled below will be skipped so there should be no need to check # of defined values unless I am missing something?
https://github.com/llvm/llvm-project/pull/90184
More information about the llvm-commits
mailing list