[llvm] [VPlan] Refactor VPlan creation, add transform introducing region (NFC). (PR #128419)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 28 14:36:24 PST 2025
================
@@ -9312,14 +9312,15 @@ LoopVectorizationPlanner::tryToBuildVPlanWithVPRecipes(VFRange &Range) {
return !CM.requiresScalarEpilogue(VF.isVector());
},
Range);
- VPlanPtr Plan = VPlan::createInitialVPlan(Legal->getWidestInductionType(),
- PSE, RequiresScalarEpilogueCheck,
- CM.foldTailByMasking(), OrigLoop);
-
+ auto Plan = std::make_unique<VPlan>(OrigLoop);
// Build hierarchical CFG.
VPlanHCFGBuilder HCFGBuilder(OrigLoop, LI, *Plan);
HCFGBuilder.buildHierarchicalCFG();
+ VPlanTransforms::introduceTopLevelVectorLoopRegion(
----------------
ayalz wrote:
Should this introduce all regions, i.e., lifting a flat CFG into a hierarchical one? With the inverse lowing conversion taking place at the end, to simplify code-gen.
https://github.com/llvm/llvm-project/pull/128419
More information about the llvm-commits
mailing list