Fix a bug handling globals that are constants, but are still external
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12208 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/DataStructure/DataStructure.cpp b/lib/Analysis/DataStructure/DataStructure.cpp
index e3430e7..2421854 100644
--- a/lib/Analysis/DataStructure/DataStructure.cpp
+++ b/lib/Analysis/DataStructure/DataStructure.cpp
@@ -1441,7 +1441,7 @@
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());
}