[llvm] [VPlan] Enforce that there is only ever one header mask. NFC (PR #152489)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 10 22:17:37 PDT 2025


================
@@ -2242,6 +2246,19 @@ static void transformRecipestoEVLRecipes(VPlan &Plan, VPValue &EVL) {
     }
   }
 
+  VPValue *HeaderMask = findHeaderMask(Plan);
+  if (!HeaderMask) {
+    // TODO: Remove this once we move transformRecipesToEVLRecipes into
+    // tryToBuildVPlanWithVPRecipes.
+    for (VPRecipeBase *R : reverse(ToErase)) {
+      SmallVector<VPValue *> PossiblyDead(R->operands());
+      R->eraseFromParent();
+      for (VPValue *Op : PossiblyDead)
+        recursivelyDeleteDeadRecipes(Op);
+    }
+    return;
+  }
----------------
lukel97 wrote:

Once we move the variable step transform into tryToBuildVPlanWithVPRecipes then we can just rely on the removeDeadRecipes pass.

https://github.com/llvm/llvm-project/pull/152489


More information about the llvm-commits mailing list