From: Chandler Carruth Date: Wed, 27 Nov 2013 01:32:17 +0000 (+0000) Subject: [PM] Remove the underspecified 'getRoot' method from CallGraph. It's X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=commitdiff_plain;h=df13080481502547340a60e9539cc041ef84e41a [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 --- diff --git a/include/llvm/Analysis/CallGraph.h b/include/llvm/Analysis/CallGraph.h index 803c0dfaaba..e80501555b2 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 348b5f21ce4..9322cbceec3 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().getRoot(); + CallGraph &CG = getAnalysis().getCallGraph(); unsigned sccNum = 0; errs() << "SCCs for the program in PostOrder:"; - for (scc_iterator SCCI = scc_begin(rootNode), - E = scc_end(rootNode); SCCI != E; ++SCCI) { + for (scc_iterator SCCI = scc_begin(&CG), + E = scc_end(&CG); SCCI != E; ++SCCI) { const std::vector &nextSCC = *SCCI; errs() << "\nSCC #" << ++sccNum << " : "; for (std::vector::const_iterator I = nextSCC.begin(),