diff options
author | Chris Lattner <sabre@nondot.org> | 2004-11-02 17:51:11 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-11-02 17:51:11 +0000 |
commit | 033a7d5389ee6827e33de3fa4602e10226e04170 (patch) | |
tree | 58293e0a5859e8b72f99fa76351142e2e181bfdc /include/llvm/Analysis/DataStructure/EquivClassGraphs.h | |
parent | e09e21dd1bd68b8c17236baa4bd035d2b7f36759 (diff) |
Substantially cleanup/speedup the eq graphs pass by walking the callgraph
a DSGraph at a time instead of a function at a time. This is also more
correct, though it doesn't seem to fix any programs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17435 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/DataStructure/EquivClassGraphs.h')
-rw-r--r-- | include/llvm/Analysis/DataStructure/EquivClassGraphs.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/include/llvm/Analysis/DataStructure/EquivClassGraphs.h b/include/llvm/Analysis/DataStructure/EquivClassGraphs.h index a634ce3f8a..e696d3d3d4 100644 --- a/include/llvm/Analysis/DataStructure/EquivClassGraphs.h +++ b/include/llvm/Analysis/DataStructure/EquivClassGraphs.h @@ -93,11 +93,10 @@ namespace PA { private: void buildIndirectFunctionSets(Module &M); - unsigned processSCC(DSGraph &FG, Function &F, std::vector<Function*> &Stack, + unsigned processSCC(DSGraph &FG, std::vector<DSGraph*> &Stack, unsigned &NextID, - std::map<Function*, unsigned> &ValMap); - - void processGraph(DSGraph &FG, Function &F); + std::map<DSGraph*, unsigned> &ValMap); + void processGraph(DSGraph &FG); DSGraph &getOrCreateGraph(Function &F); }; |