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"
43 #define DEBUG_TYPE "ExprEngine"
69 static const char* TagProviderName = "ExprEngine";
71 ExprEngine::ExprEngine(AnalysisManager &mgr, bool gcEnabled,
97 ExprEngine::~ExprEngine() {
105 ProgramStateRef ExprEngine::getInitialState(const LocationContext *InitLoc) {
184 ExprEngine::createTemporaryRegionIfNeeded(ProgramStateRef State,
261 ProgramStateRef ExprEngine::processAssume(ProgramStateRef state,
266 bool ExprEngine::wantsRegionChangeUpdate(ProgramStateRef state) {
271 ExprEngine::processRegionChanges(ProgramStateRef state,
280 void ExprEngine::printState(raw_ostream &Out, ProgramStateRef State,
285 void ExprEngine::processEndWorklist(bool hasWorkRemaining) {
289 void ExprEngine::processCFGElement(const CFGElement E, ExplodedNode *Pred,
343 void ExprEngine::removeDead(ExplodedNode *Pred, ExplodedNodeSet &Out,
425 void ExprEngine::ProcessStmt(const CFGStmt S,
456 void ExprEngine::ProcessInitializer(const CFGInitializer Init,
544 void ExprEngine::ProcessImplicitDtor(const CFGImplicitDtor D,
571 void ExprEngine::ProcessNewAllocator(const CXXNewExpr *NE,
590 void ExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor Dtor,
609 void ExprEngine::ProcessDeleteDtor(const CFGDeleteDtor Dtor,
638 void ExprEngine::ProcessBaseDtor(const CFGBaseDtor D,
657 void ExprEngine::ProcessMemberDtor(const CFGMemberDtor D,
674 void ExprEngine::ProcessTemporaryDtor(const CFGTemporaryDtor D,
701 void ExprEngine::processCleanupTemporaryBranch(const CXXBindTemporaryExpr *BTE,
718 void ExprEngine::VisitCXXBindTemporaryExpr(const CXXBindTemporaryExpr *BTE,
744 void ExprEngine::Visit(const Stmt *S, ExplodedNode *Pred,
1354 bool ExprEngine::replayWithoutInlining(ExplodedNode *N,
1418 void ExprEngine::processCFGBlockEntrance(const BlockEdge &L,
1578 void ExprEngine::processBranch(const Stmt *Condition, const Stmt *Term,
1680 void ExprEngine::processStaticInitializer(const DeclStmt *DS,
1706 void ExprEngine::processIndirectGoto(IndirectGotoNodeBuilder &builder) {
1764 void ExprEngine::processBeginOfFunction(NodeBuilderContext &BC,
1774 void ExprEngine::processEndOfFunction(NodeBuilderContext& BC,
1802 void ExprEngine::processSwitch(SwitchNodeBuilder& builder) {
1884 void ExprEngine::VisitCommonDeclRefExpr(const Expr *Ex, const NamedDecl *D,
1970 void ExprEngine::VisitLvalArraySubscriptExpr(const ArraySubscriptExpr *A,
1998 void ExprEngine::VisitMemberExpr(const MemberExpr *M, ExplodedNode *Pred,
2079 void ExprEngine::VisitAtomicExpr(const AtomicExpr *AE, ExplodedNode *Pred,
2137 ProgramStateRef ExprEngine::processPointerEscapedOnBind(ProgramStateRef State,
2179 ExprEngine::notifyCheckersOfPointerEscape(ProgramStateRef State,
2228 void ExprEngine::evalBind(ExplodedNodeSet &Dst, const Stmt *StoreE,
2288 void ExprEngine::evalStore(ExplodedNodeSet &Dst, const Expr *AssignE,
2311 void ExprEngine::evalLoad(ExplodedNodeSet &Dst,
2350 void ExprEngine::evalLoadCommon(ExplodedNodeSet &Dst,
2387 void ExprEngine::evalLocation(ExplodedNodeSet &Dst,
2424 ExprEngine::geteagerlyAssumeBinOpBifurcationTags() {
2434 void ExprEngine::evalEagerlyAssumeBinOpBifurcation(ExplodedNodeSet &Dst,
2476 void ExprEngine::VisitGCCAsmStmt(const GCCAsmStmt *A, ExplodedNode *Pred,
2499 void ExprEngine::VisitMSAsmStmt(const MSAsmStmt *A, ExplodedNode *Pred,
2510 static ExprEngine* GraphPrintCheckerState;
2520 // FIXME: Since we do not cache error nodes in ExprEngine now, this does not
2765 void ExprEngine::ViewGraph(bool trim) {
2788 llvm::ViewGraph(*G.roots_begin(), "ExprEngine");
2796 void ExprEngine::ViewGraph(ArrayRef<const ExplodedNode*> Nodes) {