diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2013-11-27 01:32:17 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2013-11-27 01:32:17 +0000 |
commit | df13080481502547340a60e9539cc041ef84e41a (patch) | |
tree | f839996fc91da82ce12367b12e516b4da0dc5762 | |
parent | 823c9c725d23f7c57e82b004ad8a011dd6dc6603 (diff) | |
download | llvm-df13080481502547340a60e9539cc041ef84e41a.tar.gz llvm-df13080481502547340a60e9539cc041ef84e41a.tar.bz2 llvm-df13080481502547340a60e9539cc041ef84e41a.tar.xz |
[PM] Remove the underspecified 'getRoot' method from CallGraph. It's
only user was an ancient SCC printing bit of the opt tool which really
should be walking the call graph the same way the CGSCC pass manager
does.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195800 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Analysis/CallGraph.h | 10 | ||||
-rw-r--r-- | tools/opt/PrintSCC.cpp | 6 |
2 files changed, 3 insertions, 13 deletions
diff --git a/include/llvm/Analysis/CallGraph.h b/include/llvm/Analysis/CallGraph.h index 803c0dfaab..e80501555b 100644 --- a/include/llvm/Analysis/CallGraph.h +++ b/include/llvm/Analysis/CallGraph.h @@ -142,11 +142,6 @@ public: CallGraphNode *getCallsExternalNode() const { return CallsExternalNode; } - /// \brief Returns the root/main method in the module, or some other root - /// node, such as the externalcallingnode. - CallGraphNode *getRoot() { return Root; } - const CallGraphNode *getRoot() const { return Root; } - //===--------------------------------------------------------------------- // Functions to keep a call graph up to date with a function that has been // modified. @@ -342,11 +337,6 @@ public: return G->getCallsExternalNode(); } - /// \brief Returns the root/main method in the module, or some other root - /// node, such as the externalcallingnode. - CallGraphNode *getRoot() { return G->getRoot(); } - const CallGraphNode *getRoot() const { return G->getRoot(); } - //===--------------------------------------------------------------------- // Functions to keep a call graph up to date with a function that has been // modified. diff --git a/tools/opt/PrintSCC.cpp b/tools/opt/PrintSCC.cpp index 348b5f21ce..9322cbceec 100644 --- a/tools/opt/PrintSCC.cpp +++ b/tools/opt/PrintSCC.cpp @@ -92,11 +92,11 @@ bool CFGSCC::runOnFunction(Function &F) { // run - Print out SCCs in the call graph for the specified module. bool CallGraphSCC::runOnModule(Module &M) { - CallGraphNode *rootNode = getAnalysis<CallGraphWrapperPass>().getRoot(); + CallGraph &CG = getAnalysis<CallGraphWrapperPass>().getCallGraph(); unsigned sccNum = 0; errs() << "SCCs for the program in PostOrder:"; - for (scc_iterator<CallGraphNode*> SCCI = scc_begin(rootNode), - E = scc_end(rootNode); SCCI != E; ++SCCI) { + for (scc_iterator<CallGraph*> SCCI = scc_begin(&CG), + E = scc_end(&CG); SCCI != E; ++SCCI) { const std::vector<CallGraphNode*> &nextSCC = *SCCI; errs() << "\nSCC #" << ++sccNum << " : "; for (std::vector<CallGraphNode*>::const_iterator I = nextSCC.begin(), |