From: Johannes Doerfert Date: Mon, 25 Apr 2016 13:34:50 +0000 (+0000) Subject: Do not propagate invalid domains over back edges X-Git-Tag: llvmorg-3.9.0-rc1~8068 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e4459a24ccd0b1754a0c5e3e5d23402f6a6f8d02;p=platform%2Fupstream%2Fllvm.git Do not propagate invalid domains over back edges llvm-svn: 267402 --- diff --git a/polly/lib/Analysis/ScopInfo.cpp b/polly/lib/Analysis/ScopInfo.cpp index e1ef23c..6ad607e 100644 --- a/polly/lib/Analysis/ScopInfo.cpp +++ b/polly/lib/Analysis/ScopInfo.cpp @@ -2370,6 +2370,10 @@ void Scop::propagateInvalidStmtDomains(Region *R, ScopDetection &SD, if (!SuccStmt) continue; + // Skip backedges. + if (DT.dominates(SuccBB, BB)) + continue; + auto *SuccBBLoop = getFirstNonBoxedLoopFor(SuccBB, LI, BoxedLoops); auto *AdjustedInvalidDomain = adjustDomainDimensions( *this, isl_set_copy(InvalidDomain), BBLoop, SuccBBLoop);