[llvm-commits] CVS: llvm/lib/Transforms/Scalar/LoopUnroll.cpp

Devang Patel dpatel at apple.com
Mon Apr 16 16:04:07 PDT 2007



Changes in directory llvm/lib/Transforms/Scalar:

LoopUnroll.cpp updated: 1.38 -> 1.39
---
Log message:


Fix 
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070416/047888.html



---
Diffs of the changes:  (+6 -0)

 LoopUnroll.cpp |    6 ++++++
 1 files changed, 6 insertions(+)


Index: llvm/lib/Transforms/Scalar/LoopUnroll.cpp
diff -u llvm/lib/Transforms/Scalar/LoopUnroll.cpp:1.38 llvm/lib/Transforms/Scalar/LoopUnroll.cpp:1.39
--- llvm/lib/Transforms/Scalar/LoopUnroll.cpp:1.38	Tue Mar  6 19:38:05 2007
+++ llvm/lib/Transforms/Scalar/LoopUnroll.cpp	Mon Apr 16 18:03:45 2007
@@ -304,6 +304,12 @@
       (*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();
+      }
     }
   }
 






More information about the llvm-commits mailing list