[PM] Update Polly for LLVM r226459 which removed another pass argument
authorChandler Carruth <chandlerc@gmail.com>
Mon, 19 Jan 2015 12:37:33 +0000 (12:37 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Mon, 19 Jan 2015 12:37:33 +0000 (12:37 +0000)
from an API in the process of preparing for the new pass manager.

llvm-svn: 226460

polly/lib/CodeGen/Utils.cpp
polly/lib/Support/ScopHelper.cpp

index 87e3703..d6492ff 100644 (file)
@@ -30,7 +30,7 @@ BasicBlock *polly::executeScopConditionally(Scop &S, Pass *P, Value *RTC) {
 
   // Split the entry edge of the region and generate a new basic block on this
   // edge. This function also updates ScopInfo and RegionInfo.
-  NewBlock = SplitEdge(R.getEnteringBlock(), R.getEntry(), P);
+  NewBlock = SplitEdge(R.getEnteringBlock(), R.getEntry(), &DT, &LI);
   if (DT.dominates(R.getEntry(), NewBlock)) {
     BasicBlock *OldBlock = R.getEntry();
     std::string OldName = OldBlock->getName();
@@ -71,7 +71,7 @@ BasicBlock *polly::executeScopConditionally(Scop &S, Pass *P, Value *RTC) {
     // PHI nodes that would complicate life.
     MergeBlock = R.getExit();
   else {
-    MergeBlock = SplitEdge(R.getExitingBlock(), R.getExit(), P);
+    MergeBlock = SplitEdge(R.getExitingBlock(), R.getExit(), &DT, &LI);
     // SplitEdge will never split R.getExit(), as R.getExit() has more than
     // one predecessor. Hence, mergeBlock is always a newly generated block.
     R.replaceExitRecursive(MergeBlock);
index bf6ad07..52e6733 100644 (file)
@@ -115,13 +115,13 @@ BasicBlock *polly::simplifyRegion(Scop *S, Pass *P) {
   BasicBlock *OldEntry = R->getEntry();
   BasicBlock *NewEntry = nullptr;
 
+  auto *DTWP = P->getAnalysisIfAvailable<DominatorTreeWrapperPass>();
+  auto *DT = DTWP ? &DTWP->getDomTree() : nullptr;
+  auto *LIWP = P->getAnalysisIfAvailable<LoopInfoWrapperPass>();
+  auto *LI = LIWP ? &LIWP->getLoopInfo() : nullptr;
+
   // Create single entry edge if the region has multiple entry edges.
   if (!EnteringBB) {
-    auto *DTWP = P->getAnalysisIfAvailable<DominatorTreeWrapperPass>();
-    auto *DT = DTWP ? &DTWP->getDomTree() : nullptr;
-    auto *LIWP = P->getAnalysisIfAvailable<LoopInfoWrapperPass>();
-    auto *LI = LIWP ? &LIWP->getLoopInfo() : nullptr;
-
     NewEntry = SplitBlock(OldEntry, OldEntry->begin(), DT, LI);
     EnteringBB = OldEntry;
   }
@@ -129,7 +129,7 @@ BasicBlock *polly::simplifyRegion(Scop *S, Pass *P) {
   // Create an unconditional entry edge.
   if (EnteringBB->getTerminator()->getNumSuccessors() != 1) {
     BasicBlock *EntryBB = NewEntry ? NewEntry : OldEntry;
-    BasicBlock *SplitEdgeBB = SplitEdge(EnteringBB, EntryBB, P);
+    BasicBlock *SplitEdgeBB = SplitEdge(EnteringBB, EntryBB, DT, LI);
 
     // Once the edge between EnteringBB and EntryBB is split, two cases arise.
     // The first is simple. The new block is inserted between EnteringBB and