[llvm] [VPlan] Replicate VPScalarIVStepsRecipe by VF outside replicate regions. (PR #170053)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 2 05:15:23 PST 2026
================
@@ -594,12 +592,33 @@ cloneForLane(VPlan &Plan, VPBuilder &Builder, Type *IdxTy,
/*IsSingleScalar=*/true, /*Mask=*/nullptr,
*RepR, *RepR, RepR->getDebugLoc());
} else {
- assert(isa<VPInstruction>(DefR) &&
- "DefR must be a VPReplicateRecipe or VPInstruction");
+ assert((isa<VPInstruction, VPScalarIVStepsRecipe>(DefR)) &&
+ "DefR must be a VPReplicateRecipe, VPInstruction or "
+ "VPScalarIVStepsRecipe");
New = DefR->clone();
for (const auto &[Idx, Op] : enumerate(NewOps)) {
New->setOperand(Idx, Op);
}
+ if (auto *Steps = dyn_cast<VPScalarIVStepsRecipe>(New)) {
+ // Skip lane 0: a missing start index is implicitly zero.
----------------
fhahn wrote:
updated thanks
https://github.com/llvm/llvm-project/pull/170053
More information about the llvm-commits
mailing list