[llvm] [LV] Check Addr in getAddressAccessSCEV in terms of SCEV expressions. (PR #171204)
David Sherwood via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 11 09:08:08 PST 2025
================
@@ -3123,15 +3124,11 @@ static const SCEV *getAddressAccessSCEV(const VPValue *Ptr, ScalarEvolution &SE,
match(Ptr, m_GetElementPtr(m_VPValue(), m_VPValue()))))
return nullptr;
- // We are looking for a GEP where all indices are either loop invariant or
- // inductions.
- for (VPValue *Opd : drop_begin(PtrR->operands())) {
- if (!Opd->isDefinedOutsideLoopRegions() &&
- !isa<VPScalarIVStepsRecipe, VPWidenIntOrFpInductionRecipe>(Opd))
- return nullptr;
- }
+ const SCEV *Addr = vputils::getSCEVExprForVPValue(Ptr, SE, L);
+ if (isa<SCEVCouldNotCompute>(Addr))
----------------
david-arm wrote:
Is it worth just moving this check into isAddressSCEVForCost? Feels like it might be useful in isAddressSCEVForCost as a quick bail-out.
https://github.com/llvm/llvm-project/pull/171204
More information about the llvm-commits
mailing list