summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2007-04-16 23:03:45 +0000
committerDevang Patel <dpatel@apple.com>2007-04-16 23:03:45 +0000
commitabdff3fecd38123ca114ee19c3cfa86a1f094184 (patch)
treec30ac656f72c40ddb0675d10eebaab373206d362 /llvm/lib
parent369bec184bcc9485b546092d59b3ee3e4d7ce8b9 (diff)
downloadbcm5719-llvm-abdff3fecd38123ca114ee19c3cfa86a1f094184.tar.gz
bcm5719-llvm-abdff3fecd38123ca114ee19c3cfa86a1f094184.zip
Fix
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070416/047888.html llvm-svn: 36182
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Transforms/Scalar/LoopUnroll.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopUnroll.cpp b/llvm/lib/Transforms/Scalar/LoopUnroll.cpp
index eff35e4f142..63696025cbb 100644
--- a/llvm/lib/Transforms/Scalar/LoopUnroll.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopUnroll.cpp
@@ -304,6 +304,12 @@ bool LoopUnroll::runOnLoop(Loop *L, LPPassManager &LPM) {
(*SI)->removeIncomingValue(LatchBlock, false);
if (InVal)
(*SI)->addIncoming(InVal, cast<BasicBlock>(LastValueMap[LatchBlock]));
+ if ((*SI)->getNumIncomingValues() == 0) {
+ // Remove this phi node.
+ // If anyone is using this PHI, make them use a dummy value instead...
+ (*SI)->replaceAllUsesWith(UndefValue::get((*SI)->getType()));
+ (*SI)->eraseFromParent();
+ }
}
}
OpenPOWER on IntegriCloud