Fix a bug handling globals that are constants, but are still external
authorChris Lattner <sabre@nondot.org>
Mon, 8 Mar 2004 03:52:24 +0000 (03:52 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 8 Mar 2004 03:52:24 +0000 (03:52 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12208 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/DataStructure/DataStructure.cpp

index e3430e7a5de19c0aba9cc811d4f3e79634fa9141..242185456fb73d78c0a8a1284ef3f81f82c6efa8 100644 (file)
@@ -1441,7 +1441,7 @@ void DSGraph::markIncompleteNodes(unsigned Flags) {
     for (DSScalarMap::global_iterator I = ScalarMap.global_begin(),
            E = ScalarMap.global_end(); I != E; ++I)
       if (GlobalVariable *GV = dyn_cast<GlobalVariable>(*I))
-        if (!GV->isConstant())
+        if (!GV->isConstant() || !GV->hasInitializer())
           markIncompleteNode(ScalarMap[GV].getNode());
 }