[analyzer] Refactor CallGraph to use Recursive AST visitor when
collecting function Decls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152651 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp b/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
index 93a3ab4..a97ff4a 100644
--- a/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
+++ b/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
@@ -206,9 +206,9 @@
virtual void HandleTranslationUnit(ASTContext &C);
- /// \brief Build the call graph for the context and use it to define the order
+ /// \brief Build the call graph for the TU and use it to define the order
/// in which the functions should be visited.
- void HandleDeclContextGallGraph(ASTContext &C, DeclContext *dc);
+ void HandleDeclsGallGraph(TranslationUnitDecl *TU);
/// \brief Run analyzes(syntax or path sensitive) on the given function.
/// \param Mode - determines if we are requesting syntax only or path
@@ -261,12 +261,11 @@
//===----------------------------------------------------------------------===//
llvm::Timer* AnalysisConsumer::TUTotalTimer = 0;
-void AnalysisConsumer::HandleDeclContextGallGraph(ASTContext &C,
- DeclContext *dc) {
+void AnalysisConsumer::HandleDeclsGallGraph(TranslationUnitDecl *TU) {
// Otherwise, use the Callgraph to derive the order.
// Build the Call Graph.
CallGraph CG;
- CG.addToCallGraph(dc);
+ CG.addToCallGraph(TU);
// Find the top level nodes - children of root + the unreachable (parentless)
// nodes.
@@ -334,7 +333,7 @@
TraverseDecl(TU);
if (Mgr->shouldInlineCall())
- HandleDeclContextGallGraph(C, TU);
+ HandleDeclsGallGraph(TU);
// After all decls handled, run checkers on the entire TranslationUnit.
checkerMgr->runCheckersOnEndOfTranslationUnit(TU, *Mgr, BR);