[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