clang API Documentation
#include "clang/StaticAnalyzer/Frontend/AnalysisConsumer.h"
#include "clang/AST/ASTConsumer.h"
#include "clang/AST/DataRecursiveASTVisitor.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/ParentMap.h"
#include "clang/Analysis/CodeInjector.h"
#include "clang/Analysis/Analyses/LiveVariables.h"
#include "clang/Analysis/CFG.h"
#include "clang/Analysis/CallGraph.h"
#include "clang/Basic/FileManager.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/StaticAnalyzer/Checkers/LocalCheckers.h"
#include "clang/StaticAnalyzer/Core/AnalyzerOptions.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugReporter.h"
#include "clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h"
#include "clang/StaticAnalyzer/Frontend/CheckerRegistration.h"
#include "clang/Frontend/CompilerInstance.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/Program.h"
#include "llvm/Support/Timer.h"
#include "llvm/Support/raw_ostream.h"
#include "ModelInjector.h"
#include <memory>
#include <queue>
#include "clang/StaticAnalyzer/Core/Analyses.def"
Go to the source code of this file.
Defines | |
#define | DEBUG_TYPE "AnalysisConsumer" |
#define | ANALYSIS_DIAGNOSTICS(NAME, CMDFLAG, DESC, CREATEFN) |
#define | ANALYSIS_STORE(NAME, CMDFLAG, DESC, CREATEFN) case NAME##Model: CreateStoreMgr = CREATEFN; break; |
#define | ANALYSIS_CONSTRAINTS(NAME, CMDFLAG, DESC, CREATEFN) case NAME##Model: CreateConstraintMgr = CREATEFN; break; |
Functions | |
static std::unique_ptr < ExplodedNode::Auditor > | CreateUbiViz () |
STATISTIC (NumFunctionTopLevel,"The # of functions at top level.") | |
STATISTIC (NumFunctionsAnalyzed,"The # of functions and blocks analyzed (as top level ""with inlining turned on).") | |
STATISTIC (NumBlocksInAnalyzedFunctions,"The # of basic blocks in the analyzed functions.") | |
STATISTIC (PercentReachableBlocks,"The % of reachable basic blocks.") | |
STATISTIC (MaxCFGSize,"The maximum number of basic blocks in a function.") | |
static bool | shouldSkipFunction (const Decl *D, const SetOfConstDecls &Visited, const SetOfConstDecls &VisitedAsTopLevel) |
static std::string | getFunctionName (const Decl *D) |
#define ANALYSIS_CONSTRAINTS | ( | NAME, | |
CMDFLAG, | |||
DESC, | |||
CREATEFN | |||
) | case NAME##Model: CreateConstraintMgr = CREATEFN; break; |
#define ANALYSIS_DIAGNOSTICS | ( | NAME, | |
CMDFLAG, | |||
DESC, | |||
CREATEFN | |||
) |
case PD_##NAME: \
CREATEFN(*Opts.get(), PathConsumers, OutDir, PP); \
break;
#define ANALYSIS_STORE | ( | NAME, | |
CMDFLAG, | |||
DESC, | |||
CREATEFN | |||
) | case NAME##Model: CreateStoreMgr = CREATEFN; break; |
#define DEBUG_TYPE "AnalysisConsumer" |
Definition at line 55 of file AnalysisConsumer.cpp.
static std::unique_ptr< ExplodedNode::Auditor > CreateUbiViz | ( | ) | [static] |
Definition at line 734 of file AnalysisConsumer.cpp.
References P.
static std::string getFunctionName | ( | const Decl * | D | ) | [static] |
Definition at line 568 of file AnalysisConsumer.cpp.
References clang::IdentifierInfo::getName().
static bool shouldSkipFunction | ( | const Decl * | D, |
const SetOfConstDecls & | Visited, | ||
const SetOfConstDecls & | VisitedAsTopLevel | ||
) | [static] |
Definition at line 417 of file AnalysisConsumer.cpp.
STATISTIC | ( | NumFunctionTopLevel | , |
"The # of functions at top level." | |||
) |
STATISTIC | ( | NumFunctionsAnalyzed | , |
"The # of functions and blocks analyzed (as top level ""with inlining turned on)." | |||
) |
STATISTIC | ( | NumBlocksInAnalyzedFunctions | , |
"The # of basic blocks in the analyzed functions." | |||
) |
STATISTIC | ( | PercentReachableBlocks | , |
"The % of reachable basic blocks." | |||
) |
STATISTIC | ( | MaxCFGSize | , |
"The maximum number of basic blocks in a function." | |||
) |