[llvm] [VPlan] Dissolve replicate regions with vector live-outs. (PR #189022)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 22 10:58:14 PDT 2026


================
@@ -753,10 +758,25 @@ static void processLaneForReplicateRegion(VPlan &Plan, Type *IdxTy,
           NewR.setOperand(I, NewOp);
       }
 
+      const APInt *InsertExtractIdx;
       if (auto *Steps = dyn_cast<VPScalarIVStepsRecipe>(&NewR))
         addLaneToStartIndex(Steps, Lane, Plan, Steps);
-      else if (match(&NewR, m_ExtractElement(m_VPValue(), m_ZeroInt())))
+      else if (match(&NewR, m_ExtractElement(m_VPValue(),
+                                             m_APInt(InsertExtractIdx)))) {
+        assert(InsertExtractIdx->isZero() && "insert indices must be zero");
----------------
fhahn wrote:

done thanks

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


More information about the llvm-commits mailing list