The first PHI node may be null, scan for the first non-null one
authorChris Lattner <sabre@nondot.org>
Sun, 5 Oct 2003 05:34:39 +0000 (05:34 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 5 Oct 2003 05:34:39 +0000 (05:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8865 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Utils/PromoteMemoryToRegister.cpp

index 0fa4a6a4b23961e17e0b645c83e887ea6f015bb1..06abc23f127e7cbbe208af43c9d724961ff276a7 100644 (file)
@@ -158,7 +158,10 @@ void PromoteMem2Reg::run() {
     // Only do work here if there the PHI nodes are missing incoming values.  We
     // know that all PHI nodes that were inserted in a block will have the same
     // number of incoming values, so we can just check any PHI node.
-    PHINode *FirstPHI = PNs[0];
+    PHINode *FirstPHI;
+    for (unsigned i = 0; (FirstPHI = PNs[i]) == 0; ++i)
+      /*empty*/;
+
     if (Preds.size() != FirstPHI->getNumIncomingValues()) {
       // Ok, now we know that all of the PHI nodes are missing entries for some
       // basic blocks.  Start by sorting the incoming predecessors for efficient