clang API Documentation
#include <AnalysisManager.h>


Public Member Functions | |
| AnalysisManager (ASTContext &ctx, DiagnosticsEngine &diags, const LangOptions &lang, PathDiagnosticConsumer *pd, StoreManagerCreator storemgr, ConstraintManagerCreator constraintmgr, CheckerManager *checkerMgr, unsigned maxnodes, unsigned maxvisit, bool vizdot, bool vizubi, AnalysisPurgeMode purge, bool eager, bool trim, bool useUnoptimizedCFG, bool addImplicitDtors, bool addInitializers, bool eagerlyTrimEGraph, AnalysisIPAMode ipa, unsigned inlineMaxStack, unsigned inlineMaxFunctionSize, AnalysisInliningMode inliningMode, bool NoRetry) | |
| AnalysisManager (ASTContext &ctx, DiagnosticsEngine &diags, AnalysisManager &ParentAM) | |
| ~AnalysisManager () | |
| void | ClearContexts () |
| AnalysisDeclContextManager & | getAnalysisDeclContextManager () |
| StoreManagerCreator | getStoreManagerCreator () |
| ConstraintManagerCreator | getConstraintManagerCreator () |
| CheckerManager * | getCheckerManager () const |
| virtual ASTContext & | getASTContext () |
| virtual SourceManager & | getSourceManager () |
| virtual DiagnosticsEngine & | getDiagnostic () |
| const LangOptions & | getLangOpts () const |
| virtual PathDiagnosticConsumer * | getPathDiagnosticConsumer () |
| void | FlushDiagnostics () |
| unsigned | getMaxNodes () const |
| unsigned | getMaxVisit () const |
| bool | shouldVisualizeGraphviz () const |
| bool | shouldVisualizeUbigraph () const |
| bool | shouldVisualize () const |
| bool | shouldEagerlyTrimExplodedGraph () const |
| bool | shouldTrimGraph () const |
| AnalysisPurgeMode | getPurgeMode () const |
| bool | shouldEagerlyAssume () const |
| bool | shouldInlineCall () const |
| CFG * | getCFG (Decl const *D) |
| template<typename T > | |
| T * | getAnalysis (Decl const *D) |
| ParentMap & | getParentMap (Decl const *D) |
| AnalysisDeclContext * | getAnalysisDeclContext (const Decl *D) |
Public Attributes | |
| AnalysisIPAMode | IPAMode |
| unsigned | InlineMaxStackDepth |
| The inlining stack depth limit. | |
| unsigned | InlineMaxFunctionSize |
| The max number of basic blocks in a function being inlined. | |
| AnalysisInliningMode | InliningMode |
| The mode of function selection used during inlining. | |
| bool | NoRetryExhausted |
| Do not re-analyze paths leading to exhausted nodes with a different strategy. We get better code coverage when retry is enabled. | |
Definition at line 28 of file AnalysisManager.h.
| clang::ento::AnalysisManager::AnalysisManager | ( | ASTContext & | ctx, |
| DiagnosticsEngine & | diags, | ||
| const LangOptions & | lang, | ||
| PathDiagnosticConsumer * | pd, | ||
| StoreManagerCreator | storemgr, | ||
| ConstraintManagerCreator | constraintmgr, | ||
| CheckerManager * | checkerMgr, | ||
| unsigned | maxnodes, | ||
| unsigned | maxvisit, | ||
| bool | vizdot, | ||
| bool | vizubi, | ||
| AnalysisPurgeMode | purge, | ||
| bool | eager, | ||
| bool | trim, | ||
| bool | useUnoptimizedCFG, | ||
| bool | addImplicitDtors, | ||
| bool | addInitializers, | ||
| bool | eagerlyTrimEGraph, | ||
| AnalysisIPAMode | ipa, | ||
| unsigned | inlineMaxStack, | ||
| unsigned | inlineMaxFunctionSize, | ||
| AnalysisInliningMode | inliningMode, | ||
| bool | NoRetry | ||
| ) |
| AnalysisManager::AnalysisManager | ( | ASTContext & | ctx, |
| DiagnosticsEngine & | diags, | ||
| AnalysisManager & | ParentAM | ||
| ) |
Construct a clone of the given AnalysisManager with the given ASTContext and DiagnosticsEngine.
Definition at line 52 of file AnalysisManager.cpp.
References clang::AnalysisDeclContextManager::getCFGBuildOptions(), and clang::CFG::BuildOptions::setAllAlwaysAdd().
| clang::ento::AnalysisManager::~AnalysisManager | ( | ) | [inline] |
Definition at line 109 of file AnalysisManager.h.
References FlushDiagnostics().
| void clang::ento::AnalysisManager::ClearContexts | ( | ) | [inline] |
Definition at line 111 of file AnalysisManager.h.
References clang::AnalysisDeclContextManager::clear().
| void PathDiagnosticConsumer::FlushDiagnostics | ( | ) | [inline] |
Definition at line 149 of file AnalysisManager.h.
Referenced by ~AnalysisManager().
| T* clang::ento::AnalysisManager::getAnalysis | ( | Decl const * | D | ) | [inline] |
Definition at line 181 of file AnalysisManager.h.
References clang::AnalysisDeclContext::getAnalysis(), and clang::AnalysisDeclContextManager::getContext().
| AnalysisDeclContext* clang::ento::AnalysisManager::getAnalysisDeclContext | ( | const Decl * | D | ) | [inline] |
Definition at line 189 of file AnalysisManager.h.
References clang::AnalysisDeclContextManager::getContext().
| AnalysisDeclContextManager& clang::ento::AnalysisManager::getAnalysisDeclContextManager | ( | ) | [inline] |
Definition at line 115 of file AnalysisManager.h.
| virtual ASTContext& clang::ento::AnalysisManager::getASTContext | ( | ) | [inline, virtual] |
Implements clang::ento::BugReporterData.
Definition at line 129 of file AnalysisManager.h.
Referenced by clang::ento::ExprEngine::getContext(), and getSourceManager().
Definition at line 176 of file AnalysisManager.h.
References clang::AnalysisDeclContext::getCFG(), and clang::AnalysisDeclContextManager::getContext().
| CheckerManager* clang::ento::AnalysisManager::getCheckerManager | ( | ) | const [inline] |
Definition at line 127 of file AnalysisManager.h.
Referenced by clang::ento::ExprEngine::getCheckerManager().
| ConstraintManagerCreator clang::ento::AnalysisManager::getConstraintManagerCreator | ( | ) | [inline] |
Definition at line 123 of file AnalysisManager.h.
| virtual DiagnosticsEngine& clang::ento::AnalysisManager::getDiagnostic | ( | ) | [inline, virtual] |
Implements clang::ento::BugReporterData.
Definition at line 137 of file AnalysisManager.h.
| const LangOptions& clang::ento::AnalysisManager::getLangOpts | ( | ) | const [inline] |
Definition at line 141 of file AnalysisManager.h.
Referenced by clang::ento::ExprEngine::VisitDeclStmt().
| unsigned clang::ento::AnalysisManager::getMaxNodes | ( | ) | const [inline] |
Definition at line 154 of file AnalysisManager.h.
| unsigned clang::ento::AnalysisManager::getMaxVisit | ( | ) | const [inline] |
Definition at line 156 of file AnalysisManager.h.
Referenced by clang::ento::SubEngine::processCFGBlockEntrance().
Definition at line 185 of file AnalysisManager.h.
References clang::AnalysisDeclContextManager::getContext(), and clang::AnalysisDeclContext::getParentMap().
| virtual PathDiagnosticConsumer* clang::ento::AnalysisManager::getPathDiagnosticConsumer | ( | ) | [inline, virtual] |
Implements clang::ento::BugReporterData.
Definition at line 145 of file AnalysisManager.h.
| AnalysisPurgeMode clang::ento::AnalysisManager::getPurgeMode | ( | ) | const [inline] |
Definition at line 170 of file AnalysisManager.h.
| virtual SourceManager& clang::ento::AnalysisManager::getSourceManager | ( | ) | [inline, virtual] |
Implements clang::ento::BugReporterData.
Definition at line 133 of file AnalysisManager.h.
References getASTContext(), and clang::ASTContext::getSourceManager().
| StoreManagerCreator clang::ento::AnalysisManager::getStoreManagerCreator | ( | ) | [inline] |
Definition at line 119 of file AnalysisManager.h.
| bool clang::ento::AnalysisManager::shouldEagerlyAssume | ( | ) | const [inline] |
Definition at line 172 of file AnalysisManager.h.
| bool clang::ento::AnalysisManager::shouldEagerlyTrimExplodedGraph | ( | ) | const [inline] |
Definition at line 166 of file AnalysisManager.h.
Referenced by clang::ento::ExprEngine::ExprEngine().
| bool clang::ento::AnalysisManager::shouldInlineCall | ( | ) | const [inline] |
Definition at line 174 of file AnalysisManager.h.
References IPAMode.
Referenced by clang::ento::ExprEngine::VisitCXXConstructExpr(), and clang::ento::ExprEngine::VisitCXXDestructor().
| bool clang::ento::AnalysisManager::shouldTrimGraph | ( | ) | const [inline] |
Definition at line 168 of file AnalysisManager.h.
| bool clang::ento::AnalysisManager::shouldVisualize | ( | ) | const [inline] |
Definition at line 162 of file AnalysisManager.h.
| bool clang::ento::AnalysisManager::shouldVisualizeGraphviz | ( | ) | const [inline] |
Definition at line 158 of file AnalysisManager.h.
| bool clang::ento::AnalysisManager::shouldVisualizeUbigraph | ( | ) | const [inline] |
Definition at line 160 of file AnalysisManager.h.
The max number of basic blocks in a function being inlined.
Definition at line 78 of file AnalysisManager.h.
The inlining stack depth limit.
Definition at line 76 of file AnalysisManager.h.
The mode of function selection used during inlining.
Definition at line 80 of file AnalysisManager.h.
Definition at line 72 of file AnalysisManager.h.
Referenced by shouldInlineCall().
Do not re-analyze paths leading to exhausted nodes with a different strategy. We get better code coverage when retry is enabled.
Definition at line 84 of file AnalysisManager.h.
Referenced by clang::ento::SubEngine::processCFGBlockEntrance().