[llvm] [VPlan] Add VPValue for VF, use it for VPWidenIntOrFpInductionRecipe. (PR #95305)

David Sherwood via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 25 05:34:11 PDT 2024


================
@@ -1067,6 +1080,7 @@ VPlan *VPlan::duplicate() {
   }
   Old2NewVPValues[&VectorTripCount] = &NewPlan->VectorTripCount;
   Old2NewVPValues[&VFxUF] = &NewPlan->VFxUF;
+  Old2NewVPValues[&VF] = &NewPlan->VF;
----------------
david-arm wrote:

I must be honest it's not obvious to me why we need a specialised version for the UF=1 case. Why can't we use `VFxUF` always given VFx1 is a valid use case? It seems to add a bit of extra complexity. I understand in a loop we may want to calculate both a runtime VF (for a second part or something) and a runtime VF x UF (for a canonical induction variable, etc), but if we've filled out `Old2NewVPValues[&VFxUF]` with both VFx1 and VFxUF we can just query accordingly, right?

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


More information about the llvm-commits mailing list