From 76074cad4dea68a13d7feed987f909439df6d4e2 Mon Sep 17 00:00:00 2001 From: Philip Reames Date: Thu, 26 Oct 2017 22:02:16 +0000 Subject: [PATCH] [SimplifyIndVars] Shorten code by using SCEV helper [NFC] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@316709 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Utils/SimplifyIndVar.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/lib/Transforms/Utils/SimplifyIndVar.cpp b/lib/Transforms/Utils/SimplifyIndVar.cpp index 08b84927c67..5263e8ccc6d 100644 --- a/lib/Transforms/Utils/SimplifyIndVar.cpp +++ b/lib/Transforms/Utils/SimplifyIndVar.cpp @@ -174,14 +174,11 @@ void SimplifyIndvar::eliminateIVComparison(ICmpInst *ICmp, Value *IVOperand) { Pred = ICmpInst::getSwappedPredicate(Pred); } - // Get the SCEVs for the ICmp operands. - const SCEV *S = SE->getSCEV(ICmp->getOperand(IVOperIdx)); - const SCEV *X = SE->getSCEV(ICmp->getOperand(1 - IVOperIdx)); - - // Simplify unnecessary loops away. + // Get the SCEVs for the ICmp operands (in the specific context of the + // current loop) const Loop *ICmpLoop = LI->getLoopFor(ICmp->getParent()); - S = SE->getSCEVAtScope(S, ICmpLoop); - X = SE->getSCEVAtScope(X, ICmpLoop); + const SCEV *S = SE->getSCEVAtScope(ICmp->getOperand(IVOperIdx), ICmpLoop); + const SCEV *X = SE->getSCEVAtScope(ICmp->getOperand(1 - IVOperIdx), ICmpLoop); ICmpInst::Predicate InvariantPredicate; const SCEV *InvariantLHS, *InvariantRHS; -- 2.40.0