Home | History | Annotate | Download | only in Core

Lines Matching defs:ExprEngine

1 //=-- ExprEngine.cpp - Path-Sensitive Expression-Level Dataflow ---*- C++ -*-=
16 #include "clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h"
41 #define DEBUG_TYPE "ExprEngine"
58 static const char* TagProviderName = "ExprEngine";
60 ExprEngine::ExprEngine(AnalysisManager &mgr, bool gcEnabled,
86 ExprEngine::~ExprEngine() {
94 ProgramStateRef ExprEngine::getInitialState(const LocationContext *InitLoc) {
173 ExprEngine::createTemporaryRegionIfNeeded(ProgramStateRef State,
250 ProgramStateRef ExprEngine::processAssume(ProgramStateRef state,
255 bool ExprEngine::wantsRegionChangeUpdate(ProgramStateRef state) {
260 ExprEngine::processRegionChanges(ProgramStateRef state,
269 void ExprEngine::printState(raw_ostream &Out, ProgramStateRef State,
274 void ExprEngine::processEndWorklist(bool hasWorkRemaining) {
278 void ExprEngine::processCFGElement(const CFGElement E, ExplodedNode *Pred,
332 void ExprEngine::removeDead(ExplodedNode *Pred, ExplodedNodeSet &Out,
414 void ExprEngine::ProcessStmt(const CFGStmt S,
445 void ExprEngine::ProcessInitializer(const CFGInitializer Init,
529 void ExprEngine::ProcessImplicitDtor(const CFGImplicitDtor D,
556 void ExprEngine::ProcessNewAllocator(const CXXNewExpr *NE,
575 void ExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor Dtor,
594 void ExprEngine::ProcessDeleteDtor(const CFGDeleteDtor Dtor,
623 void ExprEngine::ProcessBaseDtor(const CFGBaseDtor D,
642 void ExprEngine::ProcessMemberDtor(const CFGMemberDtor D,
659 void ExprEngine::ProcessTemporaryDtor(const CFGTemporaryDtor D,
671 void ExprEngine::Visit(const Stmt *S, ExplodedNode *Pred,
1216 bool ExprEngine::replayWithoutInlining(ExplodedNode *N,
1280 void ExprEngine::processCFGBlockEntrance(const BlockEdge &L,
1426 void ExprEngine::processBranch(const Stmt *Condition, const Stmt *Term,
1527 void ExprEngine::processStaticInitializer(const DeclStmt *DS,
1553 void ExprEngine::processIndirectGoto(IndirectGotoNodeBuilder &builder) {
1597 void ExprEngine::processEndOfFunction(NodeBuilderContext& BC,
1622 void ExprEngine::processSwitch(SwitchNodeBuilder& builder) {
1727 void ExprEngine::VisitCommonDeclRefExpr(const Expr *Ex, const NamedDecl *D,
1782 void ExprEngine::VisitLvalArraySubscriptExpr(const ArraySubscriptExpr *A,
1809 void ExprEngine::VisitMemberExpr(const MemberExpr *M, ExplodedNode *Pred,
1909 ProgramStateRef ExprEngine::processPointerEscapedOnBind(ProgramStateRef State,
1951 ExprEngine::notifyCheckersOfPointerEscape(ProgramStateRef State,
2000 void ExprEngine::evalBind(ExplodedNodeSet &Dst, const Stmt *StoreE,
2062 void ExprEngine::evalStore(ExplodedNodeSet &Dst, const Expr *AssignE,
2085 void ExprEngine::evalLoad(ExplodedNodeSet &Dst,
2124 void ExprEngine::evalLoadCommon(ExplodedNodeSet &Dst,
2161 void ExprEngine::evalLocation(ExplodedNodeSet &Dst,
2198 ExprEngine::geteagerlyAssumeBinOpBifurcationTags() {
2208 void ExprEngine::evalEagerlyAssumeBinOpBifurcation(ExplodedNodeSet &Dst,
2250 void ExprEngine::VisitGCCAsmStmt(const GCCAsmStmt *A, ExplodedNode *Pred,
2273 void ExprEngine::VisitMSAsmStmt(const MSAsmStmt *A, ExplodedNode *Pred,
2284 static ExprEngine* GraphPrintCheckerState;
2294 // FIXME: Since we do not cache error nodes in ExprEngine now, this does not
2550 void ExprEngine::ViewGraph(bool trim) {
2573 llvm::ViewGraph(*G.roots_begin(), "ExprEngine");
2581 void ExprEngine::ViewGraph(ArrayRef<const ExplodedNode*> Nodes) {