[llvm] [LV] Update forced epilogue VF options to allow different VFs than main. (PR #190393)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 8 14:44:39 PDT 2026


================
@@ -7181,7 +7196,19 @@ LoopVectorizationPlanner::computeBestVF() {
   // If there is a single VPlan with a single VF, return it directly.
   VPlan &FirstPlan = *VPlans[0];
   if (VPlans.size() == 1 && size(FirstPlan.vectorFactors()) == 1)
-    return {{*FirstPlan.vectorFactors().begin(), 0, 0}, &FirstPlan};
+    return {VectorizationFactor(*FirstPlan.vectorFactors().begin(), 0, 0),
+            &FirstPlan};
+
+  ElementCount UserVF = Hints.getWidth();
+  if (EpilogueVectorizationForceVF > 1 && UserVF && hasPlanWithVF(UserVF)) {
----------------
fhahn wrote:

Thanks, updated to check if we have a plan for UserVF at the outset, then check the size + `EpilogueVectorizationForceVF`

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


More information about the llvm-commits mailing list