diff options
author | Chris Lattner <sabre@nondot.org> | 2002-07-18 04:43:20 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-07-18 04:43:20 +0000 |
commit | f0cd4722bfb8fe9ac105f4fed54441b054781573 (patch) | |
tree | df1ba7703c6404f96c20bb3f56c73bde4ffb1271 /lib/Transforms | |
parent | d99d4d7b70b45d25e7dc91c6e7edb9206509ed39 (diff) | |
download | external_llvm-f0cd4722bfb8fe9ac105f4fed54441b054781573.zip external_llvm-f0cd4722bfb8fe9ac105f4fed54441b054781573.tar.gz external_llvm-f0cd4722bfb8fe9ac105f4fed54441b054781573.tar.bz2 |
*** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2959 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms')
-rw-r--r-- | lib/Transforms/IPO/GlobalDCE.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Transforms/IPO/GlobalDCE.cpp b/lib/Transforms/IPO/GlobalDCE.cpp index d69a998..4edfb39 100644 --- a/lib/Transforms/IPO/GlobalDCE.cpp +++ b/lib/Transforms/IPO/GlobalDCE.cpp @@ -29,9 +29,10 @@ static bool RemoveUnreachableFunctions(Module &M, CallGraph &CallGraph) { std::vector<CallGraphNode*> FunctionsToDelete; // Track unused functions for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I) { CallGraphNode *N = CallGraph[I]; + if (!ReachableNodes.count(N)) { // Not reachable?? I->dropAllReferences(); - N->removeAllCalledMethods(); + N->removeAllCalledFunctions(); FunctionsToDelete.push_back(N); ++NumRemoved; } @@ -45,7 +46,7 @@ static bool RemoveUnreachableFunctions(Module &M, CallGraph &CallGraph) { // for (std::vector<CallGraphNode*>::iterator I = FunctionsToDelete.begin(), E = FunctionsToDelete.end(); I != E; ++I) - delete CallGraph.removeMethodFromModule(*I); + delete CallGraph.removeFunctionFromModule(*I); return true; } |