[llvm] [VPlan] Support VPWidenIntOrFpInductionRecipes with EVL tail folding (PR #144666)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 30 04:04:26 PDT 2025


================
@@ -2194,6 +2194,8 @@ static void transformRecipestoEVLRecipes(VPlan &Plan, VPValue &EVL) {
   for (VPUser *U : to_vector(Plan.getVF().users())) {
     if (auto *R = dyn_cast<VPVectorEndPointerRecipe>(U))
       R->setOperand(1, &EVL);
+    if (auto *R = dyn_cast<VPWidenIntOrFpInductionRecipe>(U))
+      R->setVFValue(&EVL);
----------------
lukel97 wrote:

I think so, but it looks like VPScalarIVStepsRecipe currently has the VF as an operand. Although it's only used when unrolled which we don't allow for EVL tail folding so I don't think it's a miscompile currently. 

I can handle this in a separate PR

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


More information about the llvm-commits mailing list