[llvm] [VPlan] Explicitly unroll replicate-regions without live-outs by VF. (PR #170212)

via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 22 10:14:52 PDT 2026


================
@@ -543,6 +543,39 @@ void VPlanTransforms::unrollByUF(VPlan &Plan, unsigned UF) {
   VPlanTransforms::removeDeadRecipes(Plan);
 }
 
+/// Add a start index to \p Steps for \p Lane by combining any existing start
+/// index with the lane offset.
+static void addStartIndexForLane(VPScalarIVStepsRecipe *Steps, unsigned Lane,
+                                 VPlan &Plan) {
+  VPTypeAnalysis TypeInfo(Plan);
+  Type *BaseIVTy = TypeInfo.inferScalarType(Steps->getOperand(0));
+
+  VPValue *StartIndex = Steps->getStartIndex();
+  VPValue *LaneOffset;
+  unsigned AddOp;
+  VPIRFlags Flags;
----------------
ayalz wrote:

Should the new AddOp inherit the flags of Step?

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


More information about the llvm-commits mailing list