diff options
| author | Chris Lattner <sabre@nondot.org> | 2005-03-22 00:25:52 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2005-03-22 00:25:52 +0000 |
| commit | 571578143cd800f8eaf0c7fc74fd6fd0ecbdf0aa (patch) | |
| tree | 60df4da0df3093f82afaf784b2324038fba8ba50 /llvm/lib/Analysis/DataStructure/Steensgaard.cpp | |
| parent | 6294dee9130f8fcfd76fe37a08775e8a1eb44e94 (diff) | |
| download | bcm5719-llvm-571578143cd800f8eaf0c7fc74fd6fd0ecbdf0aa.tar.gz bcm5719-llvm-571578143cd800f8eaf0c7fc74fd6fd0ecbdf0aa.zip | |
instead of using a local RetValMap, just use the graph we are cloning into
for the return node map.
llvm-svn: 20757
Diffstat (limited to 'llvm/lib/Analysis/DataStructure/Steensgaard.cpp')
| -rw-r--r-- | llvm/lib/Analysis/DataStructure/Steensgaard.cpp | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/llvm/lib/Analysis/DataStructure/Steensgaard.cpp b/llvm/lib/Analysis/DataStructure/Steensgaard.cpp index 45637ffd73f..8c76189b45f 100644 --- a/llvm/lib/Analysis/DataStructure/Steensgaard.cpp +++ b/llvm/lib/Analysis/DataStructure/Steensgaard.cpp @@ -119,18 +119,14 @@ bool Steens::runOnModule(Module &M) { ResultGraph->setGlobalsGraph(GlobalsGraph); ResultGraph->setPrintAuxCalls(); - // RetValMap - Keep track of the return values for all functions that return - // valid pointers. - // - DSGraph::ReturnNodesTy RetValMap; - // Loop over the rest of the module, merging graphs for non-external functions // into this graph. // for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I) if (!I->isExternal()) { DSGraph::NodeMapTy NodeMap; - ResultGraph->cloneInto(LDS.getDSGraph(*I), RetValMap, NodeMap, 0); + ResultGraph->cloneInto(LDS.getDSGraph(*I), ResultGraph->getReturnNodes(), + NodeMap, 0); } ResultGraph->removeTriviallyDeadNodes(); @@ -161,7 +157,7 @@ bool Steens::runOnModule(Module &M) { // If we can eliminate this function call, do so! Function *F = CallTargets[c]; if (!F->isExternal()) { - ResolveFunctionCall(F, CurCall, RetValMap[F]); + ResolveFunctionCall(F, CurCall, ResultGraph->getReturnNodes()[F]); CallTargets[c] = CallTargets.back(); CallTargets.pop_back(); } else @@ -174,7 +170,8 @@ bool Steens::runOnModule(Module &M) { } } - RetValMap.clear(); + // Remove our knowledge of what the return values of the functions are. + ResultGraph->getReturnNodes().clear(); // Update the "incomplete" markers on the nodes, ignoring unknownness due to // incoming arguments... |

