| /openbsd-src/gnu/llvm/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
| H A D | ExplodedGraph.h | 65 class ExplodedNode : public llvm::FoldingSetNode { 95 ExplodedNode * const *begin() const; 97 ExplodedNode * const *end() const; 106 void addNode(ExplodedNode *N, ExplodedGraph &G); 113 void replaceNode(ExplodedNode *node); 137 explicit ExplodedNode(const ProgramPoint &loc, ProgramStateRef state, in ExplodedNode() function 195 void addPredecessor(ExplodedNode *V, ExplodedGraph &G); 208 ExplodedNode *getFirstPred() { in getFirstPred() 212 const ExplodedNode *getFirstPred() const { in getFirstPred() 213 return const_cast<ExplodedNode*>(this)->getFirstPred(); in getFirstPred() [all …]
|
| H A D | ExprEngine.h | 85 class ExplodedNode; variable 237 void GenerateAutoTransition(ExplodedNode *N); 239 void GenerateCallExitNode(ExplodedNode *N); 250 std::string DumpGraph(ArrayRef<const ExplodedNode *> Nodes, 258 void ViewGraph(ArrayRef<const ExplodedNode *> Nodes); 292 void removeDead(ExplodedNode *Node, ExplodedNodeSet &Out, 299 void processCFGElement(const CFGElement E, ExplodedNode *Pred, 302 void ProcessStmt(const Stmt *S, ExplodedNode *Pred); 304 void ProcessLoopExit(const Stmt* S, ExplodedNode *Pred); 306 void ProcessInitializer(const CFGInitializer I, ExplodedNode *Pred); [all …]
|
| H A D | CoreEngine.h | 66 std::vector<std::pair<BlockEdge, const ExplodedNode *>>; 69 std::vector<std::pair<const CFGBlock *, const ExplodedNode *>>; 109 ExplodedNode *Pred); 111 void HandleBlockEdge(const BlockEdge &E, ExplodedNode *Pred); 112 void HandleBlockEntrance(const BlockEntrance &E, ExplodedNode *Pred); 113 void HandleBlockExit(const CFGBlock *B, ExplodedNode *Pred); 115 void HandleCallEnter(const CallEnter &CE, ExplodedNode *Pred); 117 void HandlePostStmt(const CFGBlock *B, unsigned StmtIdx, ExplodedNode *Pred); 120 ExplodedNode *Pred); 122 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()
|
| /openbsd-src/gnu/llvm/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() 237 void CoreEngine::HandleBlockEdge(const BlockEdge &L, ExplodedNode *Pred) { in HandleBlockEdge() 307 ExplodedNode *Pred) { in HandleBlockEntrance() 324 void CoreEngine::HandleBlockExit(const CFGBlock * B, ExplodedNode *Pred) { in HandleBlockExit() 448 void CoreEngine::HandleCallEnter(const CallEnter &CE, ExplodedNode *Pred) { in HandleCallEnter() 454 const CFGBlock * B, ExplodedNode *Pred) { in HandleBranch() 466 ExplodedNode *Pred) { in HandleCleanupTemporaryBranch() [all …]
|
| H A D | BugReporterVisitors.cpp | 86 static const Expr *peelOffOuterExpr(const Expr *Ex, const ExplodedNode *N); 161 getLocationRegionIfReference(const Expr *E, const ExplodedNode *N, in getLocationRegionIfReference() 190 static bool hasVisibleUpdate(const ExplodedNode *LeftNode, SVal LeftVal, in hasVisibleUpdate() 191 const ExplodedNode *RightNode, SVal RightVal) { in hasVisibleUpdate() 209 const ExplodedNode *N) { in getSValForVar() 233 getConcreteIntegerValue(const Expr *CondVarExpr, const ExplodedNode *N) { in getConcreteIntegerValue() 242 const ExplodedNode *N, in isVarAnInterestingCondition() 258 static bool isInterestingExpr(const Expr *E, const ExplodedNode *N, in isInterestingExpr() 292 const ExplodedNode *N, in wasRegionOfInterestModifiedAt() 324 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() 386 ExplodedNode *CEENode = G.getNode(Loc, CEEState, false, &isNew); in processCallExit() 406 for (ExplodedNode *I : DstPostPostCallCallback) { in processCallExit() 505 NodeBuilder &Bldr, ExplodedNode *Pred, in REGISTER_MAP_WITH_PROGRAMSTATE() 534 ExplodedNode *Pred, ProgramStateRef State) { in inlineCall() [all …]
|
| H A D | ExprEngineObjC.cpp | 22 ExplodedNode *Pred, in VisitLvalObjCIvarRefExpr() 39 ExplodedNode *Pred, in VisitObjCAtSynchronizedStmt() 52 for (ExplodedNode *Pred : dstLocation) { in populateObjCForDestinationSet() 84 ExplodedNode *Pred, in VisitObjCForCollectionStmt() 148 ExplodedNode *Pred, in VisitObjCMessage() 243 ExplodedNode *Pred = *DI; in VisitObjCMessage()
|
| H A D | ExprEngine.cpp | 961 void ExprEngine::processCFGElement(const CFGElement E, ExplodedNode *Pred, in processCFGElement() 999 const ExplodedNode *Pred, in shouldRemoveDeadBindings() 1023 void ExprEngine::removeDead(ExplodedNode *Pred, ExplodedNodeSet &Out, in removeDead() 1103 void ExprEngine::ProcessStmt(const Stmt *currStmt, ExplodedNode *Pred) { in ProcessStmt() 1133 void ExprEngine::ProcessLoopExit(const Stmt* S, ExplodedNode *Pred) { in ProcessLoopExit() 1152 ExplodedNode *Pred) { in ProcessInitializer() 1277 ExplodedNode *Pred) { in ProcessImplicitDtor() 1304 ExplodedNode *Pred) { in ProcessNewAllocator() 1323 ExplodedNode *Pred, in ProcessAutomaticObjDtor() 1393 ExplodedNode *Pred, in ProcessDeleteDtor() [all …]
|
| H A D | BugReporter.cpp | 98 std::pair<PathDiagnosticCallPiece *, const ExplodedNode *>; 103 llvm::DenseMap<const ExplodedNode *, std::vector<PathDiagnosticPieceRef>>; 118 const ExplodedNode *CurrentNode; 137 const ExplodedNode *ErrorNode, 154 const ExplodedNode *getCurrentNode() const { return CurrentNode; } in getCurrentNode() 215 const ExplodedNode *const ErrorNode; 230 PathSensitiveBugReport *r, const ExplodedNode *ErrorNode, 285 std::string StackHintGeneratorForSymbol::getMessage(const ExplodedNode *N){ in getMessage() 728 const ExplodedNode *N = I.second; in updateStackPiecesWithMessage() 1033 const ExplodedNode *N) { in getStmtBeforeCond() [all …]
|
| H A D | ExprEngineCXX.cpp | 29 ExplodedNode *Pred, in CreateCXXTemporaryObject() 42 void ExprEngine::performTrivialCopy(NodeBuilder &Bldr, ExplodedNode *Pred, in performTrivialCopy() 575 ExplodedNode *Pred, in handleConstructor() 815 for (ExplodedNode *N : DstEvaluated) { in handleConstructor() 827 for (ExplodedNode *I : DstEvaluatedPostProcessed) in handleConstructor() 840 ExplodedNode *Pred, in VisitCXXConstructExpr() 846 const CXXInheritedCtorInitExpr *CE, ExplodedNode *Pred, in VisitCXXInheritedCtorInitExpr() 855 ExplodedNode *Pred, in VisitCXXDestructor() 919 ExplodedNode *Pred, in VisitCXXNewAllocatorCall() 936 for (ExplodedNode *I : DstPreCall) { in VisitCXXNewAllocatorCall() [all …]
|
| /openbsd-src/gnu/llvm/clang/include/clang/StaticAnalyzer/Core/BugReporter/ |
| H A D | BugReporterVisitors.h | 43 class ExplodedNode; variable 66 virtual PathDiagnosticPieceRef VisitNode(const ExplodedNode *Succ, 73 const ExplodedNode *EndPathNode, 82 const ExplodedNode *N, 89 getDefaultEndPath(const BugReporterContext &BRC, const ExplodedNode *N, 143 const ExplodedNode *StoreSite; 213 virtual Result track(const Expr *E, const ExplodedNode *N, 307 virtual Tracker::Result handle(const Expr *E, const ExplodedNode *Original, 308 const ExplodedNode *ExprNode, 364 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 …]
|
| /openbsd-src/gnu/llvm/clang/lib/StaticAnalyzer/Checkers/ |
| 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, 214 if (ExplodedNode *N = C.addTransition(State)) in checkDeadSymbols() 223 const ExplodedNode * 224 ValistChecker::getStartCallSite(const ExplodedNode *N, in getStartCallSite() 227 const ExplodedNode *StartCallNode = N; in getStartCallSite() 253 if (ExplodedNode *N = C.generateErrorNode()) { in reportUninitializedAccess() 267 CheckerContext &C, ExplodedNode *N, in reportLeakedVALists() [all …]
|
| H A D | MacOSKeychainAPIChecker.cpp | 114 const ExplodedNode *getAllocationNode(const ExplodedNode *N, SymbolRef Sym, 119 ExplodedNode *N, 146 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 230 ExplodedNode *N = C.generateNonFatalErrorNode(State); in generateDeallocatorMismatchReport() 275 ExplodedNode *N = C.generateNonFatalErrorNode(State); in checkPreStmt() 337 ExplodedNode *N = C.generateNonFatalErrorNode(State); in checkPreStmt() 448 const ExplodedNode * 449 MacOSKeychainAPIChecker::getAllocationNode(const ExplodedNode *N, in getAllocationNode() 455 const ExplodedNode *AllocNode = N; in getAllocationNode() 474 const AllocationPair &AP, ExplodedNode *N, CheckerContext &C) const { in generateAllocatedDataNotReleasedReport() [all …]
|
| H A D | FuchsiaHandleChecker.cpp | 210 ExplodedNode *reportLeaks(ArrayRef<SymbolRef> LeakedHandles, 211 CheckerContext &C, ExplodedNode *Pred) const; 222 void reportBug(SymbolRef Sym, ExplodedNode *ErrorNode, CheckerContext &C, 233 static const ExplodedNode *getAcquireSite(const ExplodedNode *N, SymbolRef Sym, in REGISTER_MAP_WITH_PROGRAMSTATE() 241 const ExplodedNode *Pred = N; in REGISTER_MAP_WITH_PROGRAMSTATE() 522 ExplodedNode *N = C.getPredecessor(); in checkDeadSymbols() 610 ExplodedNode * 612 CheckerContext &C, ExplodedNode *Pred) const { in reportLeaks() 613 ExplodedNode *ErrNode = C.generateNonFatalErrorNode(C.getState(), Pred); in reportLeaks() 624 ExplodedNode *ErrNode = C.generateErrorNode(C.getState()); in reportDoubleRelease() [all …]
|
| H A D | NonNullParamChecker.cpp | 42 genReportNullAttrNonNull(const ExplodedNode *ErrorN, const Expr *ArgE, 45 genReportReferenceToNullPointer(const ExplodedNode *ErrorN, 180 if (ExplodedNode *errorNode = C.generateErrorNode(stateNull)) { in checkPreCall() 200 if (ExplodedNode *N = C.generateSink(stateNull, C.getPredecessor())) { in checkPreCall() 278 NonNullParamChecker::genReportNullAttrNonNull(const ExplodedNode *ErrorNode, in genReportNullAttrNonNull() 304 const ExplodedNode *ErrorNode, const Expr *ArgE) const { in genReportReferenceToNullPointer()
|
| H A D | MoveChecker.cpp | 172 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N, 216 ExplodedNode *reportBug(const MemRegion *Region, const CXXRecordDecl *RD, 222 const ExplodedNode *getMoveLocation(const ExplodedNode *N, 274 MoveChecker::MovedBugVisitor::VisitNode(const ExplodedNode *N, in VisitNode() 332 const ExplodedNode *MoveChecker::getMoveLocation(const ExplodedNode *N, in getMoveLocation() 337 const ExplodedNode *MoveNode = N; in getMoveLocation() 380 ExplodedNode *N = reportBug(Region, RD, C, MK); in modelUse() 390 ExplodedNode *MoveChecker::reportBug(const MemRegion *Region, in reportBug() 393 if (ExplodedNode *N = misuseCausesCrash(MK) ? C.generateErrorNode() in reportBug() 397 const ExplodedNode *MoveNode = getMoveLocation(N, Region, C); in reportBug()
|
| H A D | ExprInspectionChecker.cpp | 33 ExplodedNode *ExampleNode; 61 ExplodedNode *reportBug(llvm::StringRef Msg, CheckerContext &C, 63 ExplodedNode *reportBug(llvm::StringRef Msg, BugReporter &BR, ExplodedNode *N, 138 ExplodedNode *N = C.getPredecessor(); in getArgumentValueString() 165 ExplodedNode * 168 ExplodedNode *N = C.generateNonFatalErrorNode(); in reportBug() 173 ExplodedNode * 175 ExplodedNode *N, in reportBug() 395 ExplodedNode *N = C.getPredecessor(); in checkDeadSymbols() 402 if (ExplodedNode *BugNode = reportBug("SYMBOL DEAD", C)) in checkDeadSymbols() [all …]
|
| /openbsd-src/gnu/llvm/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,
|
| /openbsd-src/gnu/llvm/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/ |
| H A D | MPIBugReporter.h | 45 const ExplodedNode *const ExplNode, 56 const ExplodedNode *const ExplNode, 67 const ExplodedNode *const ExplNode, 92 PathDiagnosticPieceRef VisitNode(const ExplodedNode *N,
|
| H A D | MPIBugReporter.cpp | 26 const ExplodedNode *const ExplNode, in reportDoubleNonblocking() 51 const ExplodedNode *const ExplNode, in reportMissingWait() 71 const ExplodedNode *const ExplNode, in reportUnmatchedWait() 88 MPIBugReporter::RequestNodeVisitor::VisitNode(const ExplodedNode *N, in VisitNode()
|