diff options
Diffstat (limited to 'polly/lib/Support/SCEVAffinator.cpp')
-rw-r--r-- | polly/lib/Support/SCEVAffinator.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/polly/lib/Support/SCEVAffinator.cpp b/polly/lib/Support/SCEVAffinator.cpp index e94df79d19d..084fcf0de00 100644 --- a/polly/lib/Support/SCEVAffinator.cpp +++ b/polly/lib/Support/SCEVAffinator.cpp @@ -24,8 +24,8 @@ using namespace llvm; using namespace polly; -SCEVAffinator::SCEVAffinator(Scop *S) - : S(S), Ctx(S->getIslCtx()), R(S->getRegion()), SE(*S->getSE()), +SCEVAffinator::SCEVAffinator(Scop *S, LoopInfo &LI) + : S(S), Ctx(S->getIslCtx()), R(S->getRegion()), SE(*S->getSE()), LI(LI), TD(R.getEntry()->getParent()->getParent()->getDataLayout()) {} SCEVAffinator::~SCEVAffinator() { @@ -44,7 +44,8 @@ __isl_give isl_pw_aff *SCEVAffinator::getPwAff(const SCEV *Expr, } else NumIterators = 0; - S->addParams(getParamsInAffineExpr(&R, Expr, SE)); + auto *Scope = LI.getLoopFor(BB); + S->addParams(getParamsInAffineExpr(&R, Scope, Expr, SE)); return visit(Expr); } |