[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/DataStructure.cpp
Chris Lattner
lattner at cs.uiuc.edu
Thu Mar 24 13:17:43 PST 2005
Changes in directory llvm/lib/Analysis/DataStructure:
DataStructure.cpp updated: 1.231 -> 1.232
---
Log message:
only look at successors of globals. This gets us down to "only" 22s in the
bu pass for 176.gcc
---
Diffs of the changes: (+9 -4)
DataStructure.cpp | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
Index: llvm/lib/Analysis/DataStructure/DataStructure.cpp
diff -u llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.231 llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.232
--- llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.231 Thu Mar 24 15:07:47 2005
+++ llvm/lib/Analysis/DataStructure/DataStructure.cpp Thu Mar 24 15:17:27 2005
@@ -1448,10 +1448,15 @@
DSScalarMap GSM = Graph.getScalarMap();
for (DSScalarMap::global_iterator GI = GSM.global_begin(),
- E = GSM.global_end(); GI != E; ++GI)
- if (PathExistsToClonedNode(Graph.getNodeForValue(*GI).getNode(), RC,
- NodesReachCopiedNodes))
- GlobalsToCopy.push_back(*GI);
+ E = GSM.global_end(); GI != E; ++GI) {
+ DSNode *GlobalNode = Graph.getNodeForValue(*GI).getNode();
+ for (DSNode::edge_iterator EI = GlobalNode->edge_begin(),
+ EE = GlobalNode->edge_end(); EI != EE; ++EI)
+ if (PathExistsToClonedNode(EI->getNode(), RC, NodesReachCopiedNodes)) {
+ GlobalsToCopy.push_back(*GI);
+ break;
+ }
+ }
// Copy aux calls that are needed.
for (unsigned i = 0, e = AuxCallToCopy.size(); i != e; ++i)
More information about the llvm-commits
mailing list