From: Zhongxing Xu Date: Fri, 2 Jul 2010 06:58:30 +0000 (+0000) Subject: add -view-call-graph option to wpa. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9b80ceba0f930f84731c2b8c1df43f66cba762d0;p=clang add -view-call-graph option to wpa. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107462 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/examples/wpa/clang-wpa.cpp b/examples/wpa/clang-wpa.cpp index c75626dab5..04a706e0a0 100644 --- a/examples/wpa/clang-wpa.cpp +++ b/examples/wpa/clang-wpa.cpp @@ -26,6 +26,9 @@ using namespace idx; static llvm::cl::list InputFilenames(llvm::cl::Positional, llvm::cl::desc("")); +static llvm::cl::opt ViewCallGraph("view-call-graph", + llvm::cl::desc("Display the call graph.")); + int main(int argc, char **argv) { llvm::cl::ParseCommandLineOptions(argc, argv, "clang-wpa"); FileManager FileMgr; @@ -48,11 +51,14 @@ int main(int argc, char **argv) { ASTUnits.push_back(AST.take()); } - llvm::OwningPtr CG; - CG.reset(new CallGraph(Prog)); + if (ViewCallGraph) { + llvm::OwningPtr CG; + CG.reset(new CallGraph(Prog)); - for (unsigned i = 0, e = ASTUnits.size(); i != e; ++i) - CG->addTU(ASTUnits[i]->getASTContext()); + for (unsigned i = 0, e = ASTUnits.size(); i != e; ++i) + CG->addTU(ASTUnits[i]->getASTContext()); - CG->ViewCallGraph(); + CG->ViewCallGraph(); + return 0; + } }