[llvm] [LV] Use SCEV to compute final value of complex induction variables (PR #195059)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 15 19:38:15 PDT 2026


================
@@ -1157,8 +1157,44 @@ optimizeLatchExitInductionUser(VPlan &Plan, VPValue *Op,
   return nullptr;
 }
 
+static VPValue *optimizeLatchExitIVUserViaSCEV(VPlan &Plan, VPValue *Op,
+                                               PredicatedScalarEvolution &PSE,
+                                               VPValue *ResumeTC,
+                                               const Loop *L) {
+  VPValue *Incoming;
+  if (!match(Op, m_ExtractLastLaneOfLastPart(m_VPValue(Incoming))))
----------------
lukel97 wrote:

I think for EVL tail folding this will need something like `m_ExtractLane(m_LastActiveLane(m_HeaderMask()))`

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


More information about the llvm-commits mailing list