| /freebsd/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
| H A D | ExprEngine.h | 85 class ExplodedNode; variable 242 std::string DumpGraph(ArrayRef<const ExplodedNode *> Nodes, 250 void ViewGraph(ArrayRef<const ExplodedNode *> Nodes); 284 void removeDead(ExplodedNode *Node, ExplodedNodeSet &Out, 291 void processCFGElement(const CFGElement E, ExplodedNode *Pred, 294 void ProcessStmt(const Stmt *S, ExplodedNode *Pred); 296 void ProcessLoopExit(const Stmt* S, ExplodedNode *Pred); 298 void ProcessInitializer(const CFGInitializer I, ExplodedNode *Pred); 300 void ProcessImplicitDtor(const CFGImplicitDtor D, ExplodedNode *Pred); 302 void ProcessNewAllocator(const CXXNewExpr *NE, ExplodedNode *Pred); [all …]
|
| H A D | ExplodedGraph.h | 66 class ExplodedNode : public llvm::FoldingSetNode { 96 ExplodedNode * const *begin() const; 98 ExplodedNode * const *end() const; 107 void addNode(ExplodedNode *N, ExplodedGraph &G); 114 void replaceNode(ExplodedNode *node); 138 explicit ExplodedNode(const ProgramPoint &loc, ProgramStateRef state, in ExplodedNode() function 196 void addPredecessor(ExplodedNode *V, ExplodedGraph &G); 209 ExplodedNode *getFirstPred() { in getFirstPred() 213 const ExplodedNode *getFirstPred() const { in getFirstPred() 214 return const_cast<ExplodedNode*>(this)->getFirstPred(); in getFirstPred() [all …]
|
| H A D | CoreEngine.h | 67 std::vector<std::pair<BlockEdge, const ExplodedNode *>>; 70 std::vector<std::pair<const CFGBlock *, const ExplodedNode *>>; 110 ExplodedNode *Pred); 112 void HandleBlockEdge(const BlockEdge &E, ExplodedNode *Pred); 113 void HandleBlockEntrance(const BlockEntrance &E, ExplodedNode *Pred); 114 void HandleBlockExit(const CFGBlock *B, ExplodedNode *Pred); 116 void HandleCallEnter(const CallEnter &CE, ExplodedNode *Pred); 118 void HandlePostStmt(const CFGBlock *B, unsigned StmtIdx, ExplodedNode *Pred); 121 ExplodedNode *Pred); 123 const CFGBlock *B, ExplodedNode *Pred); [all …]
|
| H A D | CheckerContext.h | 27 ExplodedNode *Pred; 43 ExplodedNode *pred, 71 ExplodedNode *getPredecessor() { return Pred; } in getPredecessor() 141 static const MemRegion *getLocationRegionIfPostStore(const ExplodedNode *N) { in getLocationRegionIfPostStore() 169 ExplodedNode *addTransition(ProgramStateRef State = nullptr, 181 ExplodedNode *addTransition(ProgramStateRef State, ExplodedNode *Pred, 189 ExplodedNode *generateSink(ProgramStateRef State, ExplodedNode *Pred, 209 ExplodedNode *generateErrorNode(ProgramStateRef State = nullptr, 224 ExplodedNode *generateErrorNode(ProgramStateRef State, 225 ExplodedNode *Pred, [all …]
|
| H A D | WorkList.h | 28 ExplodedNode *node; 34 WorkListUnit(ExplodedNode *N, BlockCounter C, in WorkListUnit() 41 explicit WorkListUnit(ExplodedNode *N, BlockCounter C) in WorkListUnit() 48 ExplodedNode *getNode() const { return node; } in getNode() 68 void enqueue(ExplodedNode *N, const CFGBlock *B, unsigned idx) { in enqueue() 72 void enqueue(ExplodedNode *N) { in enqueue()
|
| /freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ |
| H A D | ExplodedGraph.cpp | 56 bool ExplodedGraph::shouldCollect(const ExplodedNode *node) { in shouldCollect() 91 const ExplodedNode *pred = *(node->pred_begin()); in shouldCollect() 95 const ExplodedNode *succ = *(node->succ_begin()); in shouldCollect() 153 void ExplodedGraph::collectNode(ExplodedNode *node) { in collectNode() 159 ExplodedNode *pred = *(node->pred_begin()); in collectNode() 160 ExplodedNode *succ = *(node->succ_begin()); in collectNode() 166 node->~ExplodedNode(); in collectNode() 201 using ExplodedNodeVector = BumpVector<ExplodedNode *>; 202 using GroupStorage = llvm::PointerUnion<ExplodedNode *, ExplodedNodeVector *>; 204 void ExplodedNode::addPredecessor(ExplodedNode *V, ExplodedGraph &G) { in addPredecessor() [all …]
|
| H A D | CoreEngine.cpp | 118 ExplodedNode *Node = G.getNode(StartLoc, InitState, false, &IsNew); in ExecuteWorkList() 157 ExplodedNode *Node = WU.getNode(); in ExecuteWorkList() 182 void CoreEngine::dispatchWorkItem(ExplodedNode* Pred, ProgramPoint Loc, in dispatchWorkItem() 209 ExplodedNode *PNode = Pred->getFirstPred(); in dispatchWorkItem() 225 void CoreEngine::HandleBlockEdge(const BlockEdge &L, ExplodedNode *Pred) { in HandleBlockEdge() 295 ExplodedNode *Pred) { in HandleBlockEntrance() 312 void CoreEngine::HandleBlockExit(const CFGBlock * B, ExplodedNode *Pred) { in HandleBlockExit() 436 void CoreEngine::HandleCallEnter(const CallEnter &CE, ExplodedNode *Pred) { in HandleCallEnter() 442 const CFGBlock * B, ExplodedNode *Pred) { in HandleBranch() 454 ExplodedNode *Pred) { in HandleCleanupTemporaryBranch() [all …]
|
| H A D | BugReporterVisitors.cpp | 87 static const Expr *peelOffOuterExpr(const Expr *Ex, const ExplodedNode *N); 181 getLocationRegionIfReference(const Expr *E, const ExplodedNode *N, in getLocationRegionIfReference() 220 static bool hasVisibleUpdate(const ExplodedNode *LeftNode, SVal LeftVal, in hasVisibleUpdate() 221 const ExplodedNode *RightNode, SVal RightVal) { in hasVisibleUpdate() 239 const ExplodedNode *N) { in getSValForVar() 263 getConcreteIntegerValue(const Expr *CondVarExpr, const ExplodedNode *N) { in getConcreteIntegerValue() 272 const ExplodedNode *N, in isVarAnInterestingCondition() 288 static bool isInterestingExpr(const Expr *E, const ExplodedNode *N, in isInterestingExpr() 322 const ExplodedNode *N, in wasRegionOfInterestModifiedAt() 354 const ExplodedNode *, in getEndPath() argument [all …]
|
| H A D | ExprEngineCallAndReturn.cpp | 45 ExplodedNode *Pred) { in processCallEnter() 66 ExplodedNode *Node = G.getNode(Loc, state, false, &isNew); in processCallEnter() 78 const CFGBlock*> getLastStmt(const ExplodedNode *Node) { in getLastStmt() 166 ExplodedNode *Pred, in removeDeadOnEndOfFunction() 254 void ExprEngine::processCallExit(ExplodedNode *CEBNode) { in processCallExit() 358 ExplodedNode *BindedRetNode = G.getNode(Loc, state, false, &isNew); in processCallExit() 377 for (ExplodedNode *N : CleanedNodes) { in processCallExit() 384 ExplodedNode *CEENode = G.getNode(Loc, CEEState, false, &isNew); in processCallExit() 404 for (ExplodedNode *I : DstPostPostCallCallback) { in processCallExit() 503 NodeBuilder &Bldr, ExplodedNode *Pred, in REGISTER_MAP_WITH_PROGRAMSTATE() [all …]
|
| H A D | ExprEngineCXX.cpp | 31 ExplodedNode *Pred, in CreateCXXTemporaryObject() 44 void ExprEngine::performTrivialCopy(NodeBuilder &Bldr, ExplodedNode *Pred, in performTrivialCopy() 90 for (ExplodedNode *N : Dst) { in performTrivialCopy() 583 ExplodedNode *Pred, in handleConstructor() 748 for (ExplodedNode *N : DstPreVisit) { in handleConstructor() 784 for (ExplodedNode *N : DstPreCall) in handleConstructor() 788 for (ExplodedNode *N : DstPreCall) in handleConstructor() 820 for (ExplodedNode *N : DstEvaluated) { in handleConstructor() 832 for (ExplodedNode *I : DstEvaluatedPostProcessed) in handleConstructor() 845 ExplodedNode *Pred, in VisitCXXConstructExpr() [all …]
|
| H A D | ExprEngineC.cpp | 41 ExplodedNode *Pred, in VisitBinaryOperator() 136 for (ExplodedNode *N : Tmp) { in VisitBinaryOperator() 193 void ExprEngine::VisitBlockExpr(const BlockExpr *BE, ExplodedNode *Pred, in VisitBlockExpr() 257 ExplodedNode* Pred) { in handleLValueBitCast() 283 ExplodedNode *Pred, ExplodedNodeSet &Dst) { in VisitCast() 290 for (ExplodedNode *subExprNode : dstPreStmt) { in VisitCast() 306 for (ExplodedNode *Pred : dstPreStmt) { in VisitCast() 541 ExplodedNode *Pred, in VisitCompoundLiteralExpr() 565 void ExprEngine::VisitDeclStmt(const DeclStmt *DS, ExplodedNode *Pred, in VisitDeclStmt() 596 ExplodedNode *N = *I; in VisitDeclStmt() [all …]
|
| H A D | ExprEngine.cpp | 966 void ExprEngine::processCFGElement(const CFGElement E, ExplodedNode *Pred, in processCFGElement() 1005 const ExplodedNode *Pred, in shouldRemoveDeadBindings() 1029 void ExprEngine::removeDead(ExplodedNode *Pred, ExplodedNodeSet &Out, in removeDead() 1109 void ExprEngine::ProcessStmt(const Stmt *currStmt, ExplodedNode *Pred) { in ProcessStmt() 1139 void ExprEngine::ProcessLoopExit(const Stmt* S, ExplodedNode *Pred) { in ProcessLoopExit() 1158 ExplodedNode *Pred) { in ProcessInitializer() 1291 ExplodedNode *Pred) { in ProcessImplicitDtor() 1318 ExplodedNode *Pred) { in ProcessNewAllocator() 1338 ExplodedNode *Pred, in ProcessAutomaticObjDtor() 1410 ExplodedNode *Pred, in ProcessDeleteDtor() [all …]
|
| H A D | BugReporter.cpp | 110 std::pair<PathDiagnosticCallPiece *, const ExplodedNode *>; 115 llvm::DenseMap<const ExplodedNode *, std::vector<PathDiagnosticPieceRef>>; 130 const ExplodedNode *CurrentNode; 149 const ExplodedNode *ErrorNode, 167 const ExplodedNode *getCurrentNode() const { return CurrentNode; } in getCurrentNode() 228 const ExplodedNode *const ErrorNode; 243 PathSensitiveBugReport *r, const ExplodedNode *ErrorNode, 298 std::string StackHintGeneratorForSymbol::getMessage(const ExplodedNode *N){ in getMessage() 739 const ExplodedNode *N = I.second; in updateStackPiecesWithMessage() 1044 const ExplodedNode *N) { in getStmtBeforeCond() [all …]
|
| H A D | CheckerManager.cpp | 168 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 215 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 285 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 332 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 380 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 424 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 436 ExplodedNode *Pred, in runCheckersForBeginFunction() 449 ExplodedNode *Pred, in runCheckersForEndFunction() 481 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker() 494 ExplodedNode *Pred, in runCheckersForBranchCondition() [all …]
|
| /freebsd/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/BugReporter/ |
| H A D | BugReporterVisitors.h | 43 class ExplodedNode; variable 72 virtual PathDiagnosticPieceRef VisitNode(const ExplodedNode *Succ, 79 const ExplodedNode *EndPathNode, 88 const ExplodedNode *N, 95 getDefaultEndPath(const BugReporterContext &BRC, const ExplodedNode *N, 149 const ExplodedNode *StoreSite; 219 virtual Result track(const Expr *E, const ExplodedNode *N, 313 virtual Tracker::Result handle(const Expr *E, const ExplodedNode *Original, 314 const ExplodedNode *ExprNode, 370 bool trackExpressionValue(const ExplodedNode *N, const Expr *E, [all …]
|
| H A D | BugReporter.h | 60 class ExplodedNode; variable 82 virtual std::string getMessage(const ExplodedNode *N) = 0; 102 std::string getMessage(const ExplodedNode *N) override; 298 const ExplodedNode *ErrorNode = nullptr; 351 llvm::SmallSet<const ExplodedNode *, 4> TrackedConditions; 370 const ExplodedNode *errorNode) in PathSensitiveBugReport() 374 const ExplodedNode *errorNode) in PathSensitiveBugReport() 387 const ExplodedNode *errorNode, in PathSensitiveBugReport() 394 const ExplodedNode *errorNode, 402 const ExplodedNode *getErrorNode() const { return ErrorNode; } in getErrorNode() [all …]
|
| H A D | Z3CrosscheckVisitor.h | 36 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 40 void finalizeVisitor(BugReporterContext &BRC, const ExplodedNode *EndPathNode, 44 void addConstraints(const ExplodedNode *N,
|
| /freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | NoOwnershipChangeVisitor.h | 23 getFunctionName(const ExplodedNode *CallEnterN); 35 bool wasModifiedInFunction(const ExplodedNode *CallEnterN, 36 const ExplodedNode *CallExitEndN) final; 38 virtual PathDiagnosticPieceRef emitNote(const ExplodedNode *N) = 0; 42 const ExplodedNode *N) final { in maybeEmitNoteForObjCSelf() 49 const ExplodedNode *N) final { in maybeEmitNoteForCXXThis() 57 const ExplodedNode *N) final; 63 OwnerSet getOwnersAtNode(const ExplodedNode *N);
|
| H A D | ValistChecker.cpp | 59 const ExplodedNode *getStartCallSite(const ExplodedNode *N, 65 StringRef Msg2, CheckerContext &C, ExplodedNode *N, 82 const ExplodedNode *EndPathNode, in getEndPath() 92 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 213 if (ExplodedNode *N = C.addTransition(State)) in checkDeadSymbols() 222 const ExplodedNode * 223 ValistChecker::getStartCallSite(const ExplodedNode *N, in getStartCallSite() 226 const ExplodedNode *StartCallNode = N; in getStartCallSite() 252 if (ExplodedNode *N = C.generateErrorNode()) { in reportUninitializedAccess() 266 CheckerContext &C, ExplodedNode *N, in reportLeakedVALists() [all …]
|
| H A D | NoOwnershipChangeVisitor.cpp | 52 OwnerSet NoOwnershipChangeVisitor::getOwnersAtNode(const ExplodedNode *N) { in getOwnersAtNode() 63 NoOwnershipChangeVisitor::getFunctionName(const ExplodedNode *CallEnterN) { in getFunctionName() 72 const ExplodedNode *CallEnterN, const ExplodedNode *CallExitEndN) { in wasModifiedInFunction() 106 PathSensitiveBugReport &R, const CallEvent &Call, const ExplodedNode *N) { in maybeEmitNoteForParameters()
|
| H A D | MoveChecker.cpp | 172 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 217 ExplodedNode *tryToReportBug(const MemRegion *Region, const CXXRecordDecl *RD, 223 const ExplodedNode *getMoveLocation(const ExplodedNode *N, 275 MoveChecker::MovedBugVisitor::VisitNode(const ExplodedNode *N, in VisitNode() 333 const ExplodedNode *MoveChecker::getMoveLocation(const ExplodedNode *N, in getMoveLocation() 338 const ExplodedNode *MoveNode = N; in getMoveLocation() 381 ExplodedNode *N = tryToReportBug(Region, RD, C, MK); in modelUse() 391 ExplodedNode *MoveChecker::tryToReportBug(const MemRegion *Region, in tryToReportBug() 395 if (ExplodedNode *N = misuseCausesCrash(MK) ? C.generateErrorNode() in tryToReportBug() 399 const ExplodedNode *MoveNode = getMoveLocation(N, Region, C); in tryToReportBug()
|
| H A D | CXXDeleteChecker.cpp | 54 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 129 ExplodedNode *N = C.generateNonFatalErrorNode(); in checkTypedDeleteExpr() 159 ExplodedNode *N = C.generateNonFatalErrorNode(); in checkTypedDeleteExpr() 184 CXXDeleteChecker::PtrCastVisitor::VisitNode(const ExplodedNode *N, in VisitNode()
|
| H A D | SimpleStreamChecker.cpp | 68 ExplodedNode *ErrNode) const; 161 ExplodedNode *N = C.generateNonFatalErrorNode(State); in checkDeadSymbols() 171 ExplodedNode *ErrNode = C.generateErrorNode(); in reportDoubleClose() 186 ExplodedNode *ErrNode) const { in reportLeaks()
|
| /freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/ |
| H A D | RetainCountDiagnostics.cpp | 325 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 330 const ExplodedNode *N, 340 const ExplodedNode *N, 353 static const ExplodedNode *getCalleeNode(const ExplodedNode *Pred) { in getCalleeNode() 361 const ExplodedNode *N = Pred; in getCalleeNode() 373 annotateConsumedSummaryMismatch(const ExplodedNode *N, in annotateConsumedSummaryMismatch() 378 const ExplodedNode *CN = getCalleeNode(N); in annotateConsumedSummaryMismatch() 423 annotateStartParameter(const ExplodedNode *N, SymbolRef Sym, in annotateStartParameter() 453 RefCountReportVisitor::VisitNode(const ExplodedNode *N, BugReporterContext &BRC, in VisitNode() 476 const ExplodedNode *PrevNode = N->getFirstPred(); in VisitNode() [all …]
|
| H A D | RetainCountDiagnostics.h | 56 ExplodedNode *n, SymbolRef sym, 60 ExplodedNode *n, SymbolRef sym, 84 void findBindingToReport(CheckerContext &Ctx, ExplodedNode *Node); 87 RefLeakReport(const RefCountBug &D, const LangOptions &LOpts, ExplodedNode *n,
|