[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/DataStructure.cpp

Chris Lattner lattner at cs.uiuc.edu
Sun Feb 9 12:42:01 PST 2003


Changes in directory llvm/lib/Analysis/DataStructure:

DataStructure.cpp updated: 1.89 -> 1.90

---
Log message:

* Fix a bug where global incompleteness marking would not mark the global 
  itself incomplete!
* Allow incompleteness callers to specify they don't want globals to be
  considered sources of incompleteness.




---
Diffs of the changes:

Index: llvm/lib/Analysis/DataStructure/DataStructure.cpp
diff -u llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.89 llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.90
--- llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.89	Sat Feb  8 17:08:02 2003
+++ llvm/lib/Analysis/DataStructure/DataStructure.cpp	Sun Feb  9 12:41:49 2003
@@ -766,14 +766,11 @@
       markIncomplete(AuxFunctionCalls[i]);
     
 
-  // Mark all of the nodes pointed to by global nodes as incomplete...
-  for (unsigned i = 0, e = Nodes.size(); i != e; ++i)
-    if (Nodes[i]->NodeType & DSNode::GlobalNode) {
-      DSNode *N = Nodes[i];
-      for (unsigned i = 0, e = N->getSize(); i < e; i += DS::PointerSize)
-        if (DSNode *DSN = N->getLink(i).getNode())
-          markIncompleteNode(DSN);
-    }
+  // Mark all global nodes as incomplete...
+  if ((Flags & DSGraph::IgnoreGlobals) == 0)
+    for (unsigned i = 0, e = Nodes.size(); i != e; ++i)
+      if (Nodes[i]->NodeType & DSNode::GlobalNode)
+        markIncompleteNode(Nodes[i]);
 }
 
 static inline void killIfUselessEdge(DSNodeHandle &Edge) {





More information about the llvm-commits mailing list