Functions reachable from the arguments of unresolvable call nodes should
not have their arguments marked complete
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8639 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/DataStructure/BottomUpClosure.cpp b/lib/Analysis/DataStructure/BottomUpClosure.cpp
index 5019d90..95de8e4 100644
--- a/lib/Analysis/DataStructure/BottomUpClosure.cpp
+++ b/lib/Analysis/DataStructure/BottomUpClosure.cpp
@@ -51,7 +51,10 @@
// At the end of the bottom-up pass, the globals graph becomes complete.
// FIXME: This is not the right way to do this, but it is sorta better than
- // nothing!
+ // nothing! In particular, externally visible globals and unresolvable call
+ // nodes at the end of the BU phase should make things that they point to
+ // incomplete in the globals graph.
+ //
GlobalsGraph->maskIncompleteMarkers();
return false;
}