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

Chris Lattner lattner at cs.uiuc.edu
Sat Feb 1 00:52:01 PST 2003


Changes in directory llvm/lib/Analysis/DataStructure:

DataStructure.cpp updated: 1.81 -> 1.82

---
Log message:

Fix a bug where we would incorrectly delete globals which had edges to alive nodes in 
a graph in the t-d pass.  This slows down the TD pass by quite a bit (1/3), but is
needed for correctness.



---
Diffs of the changes:

Index: llvm/lib/Analysis/DataStructure/DataStructure.cpp
diff -u llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.81 llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.82
--- llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.81	Sat Feb  1 00:41:15 2003
+++ llvm/lib/Analysis/DataStructure/DataStructure.cpp	Sat Feb  1 00:51:17 2003
@@ -973,9 +973,6 @@
   if (Visited.count(N)) return false;  // Found a cycle
   Visited.insert(N);   // No recursion, insert into Visited...
 
-  if (N->NodeType & DSNode::GlobalNode)
-    return false; // Global nodes will be marked on their own
-
   for (unsigned i = 0, e = N->getSize(); i < e; i += DS::PointerSize)
     if (CanReachAliveNodes(N->getLink(i).getNode(), Alive, Visited)) {
       N->markReachableNodes(Alive);





More information about the llvm-commits mailing list