aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Transforms/Scalar/LoopUnroll.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/Transforms/Scalar/LoopUnroll.cpp b/lib/Transforms/Scalar/LoopUnroll.cpp
index 98b5b62e4b..1dcf78d7c8 100644
--- a/lib/Transforms/Scalar/LoopUnroll.cpp
+++ b/lib/Transforms/Scalar/LoopUnroll.cpp
@@ -266,18 +266,17 @@ bool LoopUnroll::visitLoop(Loop *L) {
else
delete LI->removeLoop(std::find(LI->begin(), LI->end(), L));
-
- // FIXME: Should update dominator analyses
-
- // Remove LCSSA Phis from the exit block
+ // Remove single-entry Phis from the exit block.
for (BasicBlock::iterator ExitInstr = LoopExit->begin();
PHINode* PN = dyn_cast<PHINode>(ExitInstr); ++ExitInstr) {
assert(PN->getNumIncomingValues() == 1
- && "Block should only have one pred, so Phi's must be LCSSA");
+ && "Block should only have one pred, so Phi's must be single entry");
PN->replaceAllUsesWith(PN->getOperand(0));
PN->eraseFromParent();
}
-
+
+ // FIXME: Should update dominator analyses
+
// Now that everything is up-to-date that will be, we fold the loop block into
// the preheader and exit block, updating our analyses as we go.
LoopExit->getInstList().splice(LoopExit->begin(), BB->getInstList(),