Home
last modified time | relevance | path

Searched refs:ExplodedNode (Results 1 – 25 of 65) sorted by relevance

123

/freebsd-9-stable/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/
DExprEngine.h145 void GenerateAutoTransition(ExplodedNode *N);
147 void GenerateCallExitNode(ExplodedNode *N);
154 void ViewGraph(ArrayRef<const ExplodedNode*> Nodes);
188 void removeDead(ExplodedNode *Node, ExplodedNodeSet &Out,
195 void processCFGElement(const CFGElement E, ExplodedNode *Pred,
198 void ProcessStmt(const CFGStmt S, ExplodedNode *Pred);
200 void ProcessInitializer(const CFGInitializer I, ExplodedNode *Pred);
202 void ProcessImplicitDtor(const CFGImplicitDtor D, ExplodedNode *Pred);
205 ExplodedNode *Pred, ExplodedNodeSet &Dst);
207 ExplodedNode *Pred, ExplodedNodeSet &Dst);
[all …]
DExplodedGraph.h54 class ExplodedNode : public llvm::FoldingSetNode {
84 ExplodedNode * const *begin() const;
86 ExplodedNode * const *end() const;
95 void addNode(ExplodedNode *N, ExplodedGraph &G);
102 void replaceNode(ExplodedNode *node);
125 explicit ExplodedNode(const ProgramPoint &loc, ProgramStateRef state, in ExplodedNode() function
131 ~ExplodedNode() {} in ~ExplodedNode()
178 void addPredecessor(ExplodedNode *V, ExplodedGraph &G);
191 ExplodedNode *getFirstPred() { in getFirstPred()
195 const ExplodedNode *getFirstPred() const { in getFirstPred()
[all …]
DCoreEngine.h52 typedef std::vector<std::pair<BlockEdge, const ExplodedNode*> >
55 typedef std::vector<std::pair<const CFGBlock*, const ExplodedNode*> >
89 ExplodedNode *Pred);
91 void HandleBlockEdge(const BlockEdge &E, ExplodedNode *Pred);
92 void HandleBlockEntrance(const BlockEntrance &E, ExplodedNode *Pred);
93 void HandleBlockExit(const CFGBlock *B, ExplodedNode *Pred);
94 void HandlePostStmt(const CFGBlock *B, unsigned StmtIdx, ExplodedNode *Pred);
97 ExplodedNode *Pred);
101 ExplodedNode *Pred);
107 ExplodedNode *generateCallExitBeginNode(ExplodedNode *N);
[all …]
DCheckerContext.h73 ExplodedNode *Pred;
89 ExplodedNode *pred,
117 ExplodedNode *getPredecessor() { return Pred; } in getPredecessor()
182 static const MemRegion *getLocationRegionIfPostStore(const ExplodedNode *N) { in getLocationRegionIfPostStore()
203 ExplodedNode *addTransition(ProgramStateRef State = 0,
215 ExplodedNode *addTransition(ProgramStateRef State,
216 ExplodedNode *Pred,
223 ExplodedNode *generateSink(ProgramStateRef State = 0,
224 ExplodedNode *Pred = 0,
281 ExplodedNode *addTransitionImpl(ProgramStateRef State,
[all …]
DSubEngine.h32 class ExplodedNode; variable
56 virtual void processCFGElement(const CFGElement E, ExplodedNode* Pred,
64 ExplodedNode *Pred) = 0;
70 ExplodedNode *Pred,
79 ExplodedNode *Pred,
95 ExplodedNode *Pred) = 0;
98 virtual void processCallEnter(CallEnter CE, ExplodedNode *Pred) = 0;
101 virtual void processCallExit(ExplodedNode *Pred) = 0;
DWorkList.h29 ExplodedNode *node;
35 WorkListUnit(ExplodedNode *N, BlockCounter C, in WorkListUnit()
42 explicit WorkListUnit(ExplodedNode *N, BlockCounter C) in WorkListUnit()
49 ExplodedNode *getNode() const { return node; } in getNode()
69 void enqueue(ExplodedNode *N, const CFGBlock *B, unsigned idx) { in enqueue()
73 void enqueue(ExplodedNode *N) { in enqueue()
/freebsd-9-stable/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/
DExplodedGraph.cpp34 ExplodedNode::Auditor::~Auditor() {} in ~Auditor()
37 static ExplodedNode::Auditor* NodeAuditor = 0;
40 void ExplodedNode::SetAuditor(ExplodedNode::Auditor* A) { in SetAuditor()
67 bool ExplodedGraph::shouldCollect(const ExplodedNode *node) { in shouldCollect()
101 const ExplodedNode *pred = *(node->pred_begin()); in shouldCollect()
105 const ExplodedNode *succ = *(node->succ_begin()); in shouldCollect()
159 void ExplodedGraph::collectNode(ExplodedNode *node) { in collectNode()
165 ExplodedNode *pred = *(node->pred_begin()); in collectNode()
166 ExplodedNode *succ = *(node->succ_begin()); in collectNode()
172 node->~ExplodedNode(); in collectNode()
[all …]
DCoreEngine.cpp220 ExplodedNode *Node = WU.getNode(); in ExecuteWorkList()
228 void CoreEngine::dispatchWorkItem(ExplodedNode* Pred, ProgramPoint Loc, in dispatchWorkItem()
257 ExplodedNode *PNode = Pred->getFirstPred(); in dispatchWorkItem()
283 void CoreEngine::HandleBlockEdge(const BlockEdge &L, ExplodedNode *Pred) { in HandleBlockEdge()
323 ExplodedNode *Pred) { in HandleBlockEntrance()
342 void CoreEngine::HandleBlockExit(const CFGBlock * B, ExplodedNode *Pred) { in HandleBlockExit()
454 const CFGBlock * B, ExplodedNode *Pred) { in HandleBranch()
466 ExplodedNode *Pred) { in HandleStaticInit()
478 ExplodedNode *Pred) { in HandlePostStmt()
494 ExplodedNode *Pred) { in generateNode()
[all …]
DBugReporterVisitors.cpp85 const Stmt *bugreporter::GetDenomExpr(const ExplodedNode *N) { in GetDenomExpr()
92 const Stmt *bugreporter::GetRetValExpr(const ExplodedNode *N) { in GetRetValExpr()
105 const ExplodedNode *EndPathNode, in getEndPath()
112 const ExplodedNode *EndPathNode, in getDefaultEndPath()
172 static void addVisitorIfNecessary(const ExplodedNode *Node, const Stmt *S, in addVisitorIfNecessary()
234 PathDiagnosticPiece *visitNodeInitial(const ExplodedNode *N, in visitNodeInitial()
235 const ExplodedNode *PrevN, in visitNodeInitial()
333 PathDiagnosticPiece *visitNodeMaybeUnsuppress(const ExplodedNode *N, in visitNodeMaybeUnsuppress()
334 const ExplodedNode *PrevN, in visitNodeMaybeUnsuppress()
386 PathDiagnosticPiece *VisitNode(const ExplodedNode *N, in VisitNode()
[all …]
DExprEngine.cpp276 void ExprEngine::processCFGElement(const CFGElement E, ExplodedNode *Pred, in processCFGElement()
301 const ExplodedNode *Pred, in shouldRemoveDeadBindings()
326 void ExprEngine::removeDead(ExplodedNode *Pred, ExplodedNodeSet &Out, in removeDead()
409 ExplodedNode *Pred) { in ProcessStmt()
440 ExplodedNode *Pred) { in ProcessInitializer()
515 ExplodedNode *N = *I; in ProcessInitializer()
524 ExplodedNode *Pred) { in ProcessImplicitDtor()
551 ExplodedNode *Pred, in ProcessAutomaticObjDtor()
570 ExplodedNode *Pred, in ProcessDeleteDtor()
599 ExplodedNode *Pred, ExplodedNodeSet &Dst) { in ProcessBaseDtor()
[all …]
DExprEngineCallAndReturn.cpp40 void ExprEngine::processCallEnter(CallEnter CE, ExplodedNode *Pred) { in processCallEnter()
62 ExplodedNode *Node = G.getNode(Loc, state, false, &isNew); in processCallEnter()
71 const CFGBlock*> getLastStmt(const ExplodedNode *Node) { in getLastStmt()
160 ExplodedNode *Pred, in removeDeadOnEndOfFunction()
218 void ExprEngine::processCallExit(ExplodedNode *CEBNode) { in processCallExit()
288 ExplodedNode *BindedRetNode = G.getNode(Loc, state, false, &isNew); in processCallExit()
315 ExplodedNode *CEENode = G.getNode(Loc, CEEState, false, &isNew); in processCallExit()
417 NodeBuilder &Bldr, ExplodedNode *Pred, in REGISTER_TRAIT_WITH_PROGRAMSTATE()
451 if (ExplodedNode *N = G.getNode(Loc, State, false, &isNew)) { in REGISTER_TRAIT_WITH_PROGRAMSTATE()
482 void ExprEngine::VisitCallExpr(const CallExpr *CE, ExplodedNode *Pred, in VisitCallExpr()
[all …]
DExprEngineObjC.cpp23 ExplodedNode *Pred, in VisitLvalObjCIvarRefExpr()
40 ExplodedNode *Pred, in VisitObjCAtSynchronizedStmt()
46 ExplodedNode *Pred, in VisitObjCForCollectionStmt()
136 ExplodedNode *Pred, in VisitObjCMessage()
156 ExplodedNode *Pred = *DI; in VisitObjCMessage()
DExprEngineC.cpp23 ExplodedNode *Pred, in VisitBinaryOperator()
180 void ExprEngine::VisitBlockExpr(const BlockExpr *BE, ExplodedNode *Pred, in VisitBlockExpr()
221 ExplodedNode *Pred, ExplodedNodeSet &Dst) { in VisitCast()
229 ExplodedNode *subExprNode = *I; in VisitCast()
403 ExplodedNode *Pred, in VisitCompoundLiteralExpr()
435 void ExprEngine::VisitDeclStmt(const DeclStmt *DS, ExplodedNode *Pred, in VisitDeclStmt()
454 ExplodedNode *N = *I; in VisitDeclStmt()
462 ExplodedNode *UpdatedN = N; in VisitDeclStmt()
508 void ExprEngine::VisitLogicalExpr(const BinaryOperator* B, ExplodedNode *Pred, in VisitLogicalExpr()
516 ExplodedNode *N = Pred; in VisitLogicalExpr()
[all …]
DBugReporter.cpp57 static const Stmt *GetPreviousStmt(const ExplodedNode *N) { in GetPreviousStmt()
66 GetCurrentOrPreviousStmt(const ExplodedNode *N) { in GetCurrentOrPreviousStmt()
314 const ExplodedNode *getOriginalNode(const ExplodedNode *N) { in getOriginalNode()
333 PathDiagnosticLocation ExecutionContinues(const ExplodedNode *N);
336 const ExplodedNode *N);
363 PathDiagnosticBuilder::ExecutionContinues(const ExplodedNode *N) { in ExecutionContinues()
373 const ExplodedNode *N) { in ExecutionContinues()
503 const ExplodedNode *N, in GenerateVisitorsOnlyPathDiagnostic()
512 while (const ExplodedNode *Pred = N->getFirstPred()) { in GenerateVisitorsOnlyPathDiagnostic()
530 typedef std::pair<PathDiagnosticCallPiece*, const ExplodedNode*> StackDiagPair;
[all …]
DExprEngineCXX.cpp26 ExplodedNode *Pred, in CreateCXXTemporaryObject()
39 void ExprEngine::performTrivialCopy(NodeBuilder &Bldr, ExplodedNode *Pred, in performTrivialCopy()
112 ExplodedNode *Pred, in VisitCXXConstructExpr()
291 ExplodedNode *Pred, in VisitCXXDestructor()
332 void ExprEngine::VisitCXXNewExpr(const CXXNewExpr *CNE, ExplodedNode *Pred, in VisitCXXNewExpr()
421 ExplodedNode *NewN = Bldr.generateNode(CNE, Pred, State); in VisitCXXNewExpr()
438 ExplodedNode *Pred, ExplodedNodeSet &Dst) { in VisitCXXDeleteExpr()
445 ExplodedNode *Pred, in VisitCXXCatchStmt()
463 void ExprEngine::VisitCXXThisExpr(const CXXThisExpr *TE, ExplodedNode *Pred, in VisitCXXThisExpr()
DCheckerManager.cpp153 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
195 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
238 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
282 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
327 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
358 ExplodedNode *Pred, in runCheckersForEndFunction()
391 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
403 ExplodedNode *Pred, in runCheckersForBranchCondition()
436 NodeBuilder &Bldr, ExplodedNode *Pred) { in runChecker()
531 ExplodedNode *Pred = *NI; in runCheckersForEvalCall()
/freebsd-9-stable/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/
DBugReporterVisitor.h27 class ExplodedNode; variable
58 virtual PathDiagnosticPiece *VisitNode(const ExplodedNode *Succ,
59 const ExplodedNode *Pred,
70 const ExplodedNode *N,
77 const ExplodedNode *N,
123 PathDiagnosticPiece *VisitNode(const ExplodedNode *N,
124 const ExplodedNode *PrevN,
153 PathDiagnosticPiece *VisitNode(const ExplodedNode *N,
154 const ExplodedNode *PrevN,
160 bool isUnderconstrained(const ExplodedNode *N) const;
[all …]
DBugReporter.h40 class ExplodedNode; variable
60 virtual const ExplodedNode*
61 getOriginalNode(const ExplodedNode *N) = 0;
81 const ExplodedNode *ErrorNode;
145 BugReport(BugType& bt, StringRef desc, const ExplodedNode *errornode) in BugReport()
150 const ExplodedNode *errornode) in BugReport()
167 BugReport(BugType& bt, StringRef desc, const ExplodedNode *errornode, in BugReport()
180 const ExplodedNode *getErrorNode() const { return ErrorNode; } in getErrorNode()
/freebsd-9-stable/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/
DMacOSKeychainAPIChecker.cpp103 const ExplodedNode *getAllocationNode(const ExplodedNode *N, SymbolRef Sym,
107 ExplodedNode *N,
148 PathDiagnosticPiece *VisitNode(const ExplodedNode *N,
149 const ExplodedNode *PrevN,
260 ExplodedNode *N = C.addTransition(State); in generateDeallocatorMismatchReport()
302 ExplodedNode *N = C.addTransition(State); in checkPreStmt()
361 ExplodedNode *N = C.addTransition(State); in checkPreStmt()
427 ExplodedNode *N = C.addTransition(State); in checkPreStmt()
490 const ExplodedNode *
491 MacOSKeychainAPIChecker::getAllocationNode(const ExplodedNode *N, in getAllocationNode()
[all …]
DNonNullParamChecker.cpp38 BugReport *genReportNullAttrNonNull(const ExplodedNode *ErrorN,
40 BugReport *genReportReferenceToNullPointer(const ExplodedNode *ErrorN,
122 if (ExplodedNode *errorNode = C.generateSink(stateNull)) { in checkPreCall()
153 const ExplodedNode *ErrorNode, const Expr *ArgE) const { in genReportNullAttrNonNull()
172 const ExplodedNode *ErrorNode, const Expr *ArgE) const { in genReportReferenceToNullPointer()
DExprInspectionChecker.cpp60 ExplodedNode *N = C.getPredecessor(); in getArgumentValueString()
89 ExplodedNode *N = C.getPredecessor(); in analyzerEval()
106 ExplodedNode *N = C.getPredecessor(); in analyzerWarnIfReached()
117 ExplodedNode *N = C.getPredecessor(); in analyzerCheckInlined()
DCallAndMessageChecker.cpp62 ExplodedNode *N) const;
77 ExplodedNode *N = C.generateSink(); in emitBadCall()
124 if (ExplodedNode *N = C.generateSink()) { in PreVisitProcessArg()
190 if (ExplodedNode *N = C.generateSink()) { in PreVisitProcessArg()
264 ExplodedNode *N = C.generateSink(); in checkPreStmt()
319 ExplodedNode *N = C.generateSink(); in checkPreCall()
363 if (ExplodedNode *N = C.generateSink()) { in checkPreObjCMessage()
417 ExplodedNode *N) const { in emitNilReceiverBug()
487 if (ExplodedNode *N = C.generateSink(state, 0 , &Tag)) in HandleNilReceiver()
DRetainCountChecker.cpp1537 typedef llvm::DenseMap<const ExplodedNode *, const RetainSummary *>
1649 virtual PathDiagnosticPiece *VisitNode(const ExplodedNode *N,
1650 const ExplodedNode *PrevN,
1655 const ExplodedNode *N,
1666 const ExplodedNode *N,
1684 const SummaryLogTy &Log, ExplodedNode *n, SymbolRef sym, in CFRefReport()
1693 const SummaryLogTy &Log, ExplodedNode *n, SymbolRef sym, in CFRefReport()
1713 const SummaryLogTy &Log, ExplodedNode *n, SymbolRef sym,
1766 PathDiagnosticPiece *CFRefReportVisitor::VisitNode(const ExplodedNode *N, in VisitNode()
1767 const ExplodedNode *PrevN, in VisitNode()
[all …]
DSimpleStreamChecker.cpp68 ExplodedNode *ErrNode) const;
204 ExplodedNode *N = C.addTransition(State); in checkDeadSymbols()
212 ExplodedNode *ErrNode = C.generateSink(); in reportDoubleClose()
227 ExplodedNode *ErrNode) const { in reportLeaks()
/freebsd-9-stable/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/
DAnalysisConsumer.cpp54 static ExplodedNode::Auditor* CreateUbiViz();
656 OwningPtr<ExplodedNode::Auditor> Auditor; in ActionExprEngine()
659 ExplodedNode::SetAuditor(Auditor.get()); in ActionExprEngine()
668 ExplodedNode::SetAuditor(0); in ActionExprEngine()
718 class UbigraphViz : public ExplodedNode::Auditor {
731 virtual void AddEdge(ExplodedNode *Src, ExplodedNode *Dst);
736 static ExplodedNode::Auditor* CreateUbiViz() { in CreateUbiViz()
748 void UbigraphViz::AddEdge(ExplodedNode *Src, ExplodedNode *Dst) { in AddEdge()

123