[llvm] [VPlan] Compute cost of more replicating loads/stores in ::computeCost. (PR #160053)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 24 06:20:40 PDT 2025
================
@@ -3075,6 +3075,63 @@ bool VPReplicateRecipe::shouldPack() const {
});
}
+/// Returns true if \p Ptr is a pointer computation for which the legacy cost
+/// model computes a SCEV expression when comping the address cost.
+static bool shouldUseAddressAccessSCEV(VPValue *Ptr) {
+ auto *PtrR = Ptr->getDefiningRecipe();
+ if (!PtrR || !((isa<VPReplicateRecipe>(PtrR) &&
+ cast<VPReplicateRecipe>(PtrR)->getOpcode() ==
+ Instruction::GetElementPtr) ||
+ isa<VPWidenGEPRecipe>(PtrR)))
+ return false;
+
+ // We are looking for a gep with all loop invariant indices except for one
+ // which should be an induction variable.
+ unsigned NumOperands = PtrR->getNumOperands();
+ for (unsigned Idx = 1; Idx < NumOperands; ++Idx) {
+ VPValue *Opd = PtrR->getOperand(Idx);
+ if (!(Opd->isDefinedOutsideLoopRegions()) &&
----------------
fhahn wrote:
Yep, removed thanks!
https://github.com/llvm/llvm-project/pull/160053
More information about the llvm-commits
mailing list