diff --git a/llvm/lib/Analysis/LoopAccessAnalysis.cpp b/llvm/lib/Analysis/LoopAccessAnalysis.cpp index f222a9905c3bb..1f9cf8de34283 100644 --- a/llvm/lib/Analysis/LoopAccessAnalysis.cpp +++ b/llvm/lib/Analysis/LoopAccessAnalysis.cpp @@ -2862,23 +2862,6 @@ static const SCEV *getStrideFromPointer(Value *Ptr, ScalarEvolution *SE, Loop *L V = S->getStepRecurrence(*SE); - // Strip off the size of access multiplication if we are still analyzing the - // pointer. - if (OrigPtr == Ptr) { - if (auto *M = dyn_cast(V)) { - auto *StepConst = dyn_cast(M->getOperand(0)); - if (!StepConst) - return nullptr; - - auto StepVal = StepConst->getAPInt().trySExtValue(); - // Bail out on a non-unit pointer access size. - if (!StepVal || StepVal != 1) - return nullptr; - - V = M->getOperand(1); - } - } - // Note that the restriction after this loop invariant check are only // profitability restrictions. if (!SE->isLoopInvariant(V, Lp))