| /freebsd-12.1/contrib/llvm/tools/clang/lib/Analysis/ |
| H A D | CFG.cpp | 560 std::pair<CFGBlock *, CFGBlock *> VisitLogicalOperator(BinaryOperator *B, 670 CFGBlock *NYS() { in NYS() 856 void addSuccessor(CFGBlock *B, CFGBlock *S, bool IsReachable = true) { in addSuccessor() 863 void addSuccessor(CFGBlock *B, CFGBlock *ReachableBlock, CFGBlock *AltBlock) { in addSuccessor() 2250 std::pair<CFGBlock*, CFGBlock*> 3284 CFGBlock * 4652 CFGBlock *Mem = getAllocator().Allocate<CFGBlock>(); in createBlock() 4739 CFGBlock::AdjacentBlock::AdjacentBlock(CFGBlock *B, bool IsReachable) in AdjacentBlock() 4744 CFGBlock::AdjacentBlock::AdjacentBlock(CFGBlock *B, CFGBlock *AlternateBlock) in AdjacentBlock() 4760 bool CFGBlock::FilterEdge(const CFGBlock::FilterOptions &F, in FilterEdge() [all …]
|
| H A D | ReachableCode.cpp | 88 const CFGBlock *Current = B; in isDeadReturn() 315 SmallVector<const CFGBlock*, 32> WL; in scanFromBlock() 328 const CFGBlock *item = WL.pop_back_val(); in scanFromBlock() 342 const CFGBlock *B = *I; in scanFromBlock() 388 SmallVector<const CFGBlock *, 10> WorkList; 403 void enqueue(const CFGBlock *block); 411 void reportDeadCode(const CFGBlock *B, 430 if (const CFGBlock *PredBlock = *I) { in isDeadCodeRoot() 505 if (const CFGBlock *predBlock = *I) in scanBackwards() 535 const CFGBlock *Block = I->first; in scanBackwards() [all …]
|
| H A D | LiveVariables.cpp | 34 llvm::PriorityQueue<const CFGBlock *, SmallVector<const CFGBlock *, 20>, 43 void enqueueBlock(const CFGBlock *block); 44 void enqueuePredecessors(const CFGBlock *block); 46 const CFGBlock *dequeue(); 65 const CFGBlock *DataflowWorklist::dequeue() { in dequeue() 68 const CFGBlock *b = worklist.top(); in dequeue() 205 const CFGBlock *currentBlock; 564 const CFGBlock *block = *it; in computeLiveness() 597 if (const CFGBlock *succ = *it) { in computeLiveness() 624 std::vector<const CFGBlock *> vec; in dumpBlockLiveness() [all …]
|
| H A D | CFGReachabilityAnalysis.cpp | 27 bool CFGReverseBlockReachabilityAnalysis::isReachable(const CFGBlock *Src, in isReachable() 28 const CFGBlock *Dst) { in isReachable() 43 void CFGReverseBlockReachabilityAnalysis::mapReachability(const CFGBlock *Dst) { in mapReachability() 44 SmallVector<const CFGBlock *, 11> worklist; in mapReachability() 56 const CFGBlock *block = worklist.pop_back_val(); in mapReachability() 71 for (CFGBlock::const_pred_iterator i = block->pred_begin(), in mapReachability()
|
| H A D | UninitializedValues.cpp | 148 Value getValue(const CFGBlock *block, const CFGBlock *dstBlock, in getValue() 224 SmallVector<const CFGBlock *, 20> worklist; 240 const CFGBlock *dequeue(); 248 const CFGBlock *Successor = *I; in enqueueSuccessors() 257 const CFGBlock *B = nullptr; in dequeue() 512 const CFGBlock *block; 598 SmallVector<const CFGBlock*, 32> Queue; in getUninitUse() 614 const CFGBlock *Pred = *I; in getUninitUse() 663 const CFGBlock *Succ = *I; in getUninitUse() 831 const CFGBlock *pred = *I; in runOnBlock() [all …]
|
| H A D | CFGStmtMap.cpp | 22 typedef llvm::DenseMap<const Stmt*, CFGBlock*> SMap; 27 CFGBlock *CFGStmtMap::getBlock(Stmt *S) { in getBlock() 36 CFGBlock *B = I->second; in getBlock() 49 static void Accumulate(SMap &SM, CFGBlock *B) { in Accumulate() 51 for (CFGBlock::iterator I = B->begin(), E = B->end(); I != E; ++I) { in Accumulate() 57 CFGBlock *&Entry = SM[CS->getStmt()]; in Accumulate()
|
| H A D | Consumed.cpp | 62 static SourceLocation getFirstStmtLoc(const CFGBlock *Block) { in getFirstStmtLoc() 77 static SourceLocation getLastStmtLoc(const CFGBlock *Block) { in getLastStmtLoc() 83 for (CFGBlock::const_reverse_iterator BI = Block->rbegin(), in getLastStmtLoc() 1019 const CFGBlock *Block, ConsumedStateMap *StateMap, in addInfo() 1033 void ConsumedBlockInfo::addInfo(const CFGBlock *Block, in addInfo() 1053 void ConsumedBlockInfo::discardInfo(const CFGBlock *Block) { in discardInfo() 1058 ConsumedBlockInfo::getInfo(const CFGBlock *Block) { in getInfo() 1066 bool ConsumedBlockInfo::isBackEdge(const CFGBlock *From, const CFGBlock *To) { in isBackEdge() 1082 for (CFGBlock::const_pred_iterator PI = Block->pred_begin(), in isBackEdgeTarget() 1229 bool ConsumedAnalyzer::splitState(const CFGBlock *CurrBlock, in splitState() [all …]
|
| /freebsd-12.1/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ |
| H A D | Dominators.h | 38 using DomTreeNode = llvm::DomTreeNodeBase<CFGBlock>; 47 llvm::DomTreeBase<CFGBlock> *DT; 50 DT = new llvm::DomTreeBase<CFGBlock>(); in DominatorTree() 55 llvm::DomTreeBase<CFGBlock>& getBase() { return *DT; } in getBase() 58 CFGBlock *getRoot() const { in getRoot() 110 bool dominates(const CFGBlock *A, const CFGBlock *B) const { in dominates() 116 bool properlyDominates(const CFGBlock *A, const CFGBlock *B) const { in properlyDominates() 122 CFGBlock *findNearestCommonDominator(CFGBlock *A, CFGBlock *B) { in findNearestCommonDominator() 126 const CFGBlock *findNearestCommonDominator(const CFGBlock *A, in findNearestCommonDominator() 133 void changeImmediateDominator(CFGBlock *N, CFGBlock *NewIDom) { in changeImmediateDominator() [all …]
|
| H A D | Consumed.h | 177 void intersectAtLoopHead(const CFGBlock *LoopHead, const CFGBlock *LoopBack, 222 bool allBackEdgesVisited(const CFGBlock *CurrBlock, 223 const CFGBlock *TargetBlock); 225 void addInfo(const CFGBlock *Block, ConsumedStateMap *StateMap, 227 void addInfo(const CFGBlock *Block, 230 ConsumedStateMap* borrowInfo(const CFGBlock *Block); 232 void discardInfo(const CFGBlock *Block); 234 std::unique_ptr<ConsumedStateMap> getInfo(const CFGBlock *Block); 236 bool isBackEdge(const CFGBlock *From, const CFGBlock *To); 237 bool isBackEdgeTarget(const CFGBlock *Block); [all …]
|
| H A D | ThreadSafetyCommon.h | 106 void enterCFGBlock(const CFGBlock *B) {} in enterCFGBlock() 118 void enterCFGBlockBody(const CFGBlock *B) {} in enterCFGBlockBody() 127 void exitCFGBlockBody(const CFGBlock *B) {} in exitCFGBlockBody() 139 void exitCFGBlock(const CFGBlock *B) {} in exitCFGBlock() 142 void exitCFG(const CFGBlock *Last) {} in exitCFG() 183 SmallVector<CFGBlock*, 4> BackEdges; in walk() 452 void enterCFGBlock(const CFGBlock *B); 456 void enterCFGBlockBody(const CFGBlock *B); 459 void exitCFGBlockBody(const CFGBlock *B); 463 void exitCFGBlock(const CFGBlock *B); [all …]
|
| H A D | PostOrderCFGView.h | 45 struct iterator { using value_type = const CFGBlock *; }; 52 std::pair<llvm::NoneType, bool> insert(const CFGBlock *Block) { in insert() 68 bool alreadySet(const CFGBlock *Block) { in alreadySet() 75 std::vector<const CFGBlock *> Blocks; 77 using BlockOrderTy = llvm::DenseMap<const CFGBlock *, unsigned>; 83 using iterator = std::vector<const CFGBlock *>::reverse_iterator; 84 using const_iterator = std::vector<const CFGBlock *>::const_reverse_iterator; 102 bool operator()(const CFGBlock *b1, const CFGBlock *b2) const;
|
| H A D | CFGReachabilityAnalysis.h | 25 class CFGBlock; variable 43 bool isReachable(const CFGBlock *Src, const CFGBlock *Dst); 46 void mapReachability(const CFGBlock *Dst);
|
| H A D | LiveVariables.h | 24 class CFGBlock; variable 63 const CFGBlock *currentBlock, in observeStmt() 79 bool isLive(const CFGBlock *B, const VarDecl *D);
|
| /freebsd-12.1/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
| H A D | CoreEngine.h | 201 const CFGBlock *Block; 423 const CFGBlock *DstT; 424 const CFGBlock *DstF; 434 const CFGBlock *dstT, const CFGBlock *dstF) in BranchNodeBuilder() 444 const CFGBlock *dstT, const CFGBlock *dstF) in BranchNodeBuilder() 471 const CFGBlock *Src; 472 const CFGBlock &DispatchBlock; 484 CFGBlock::const_succ_iterator I; 496 const CFGBlock *getBlock() const { in getBlock() 519 const CFGBlock *Src; [all …]
|
| H A D | SubEngine.h | 22 class CFGBlock; variable 79 const CFGBlock *DstT, 80 const CFGBlock *DstF) = 0; 89 const CFGBlock *DstT, 90 const CFGBlock *DstF) = 0; 98 const CFGBlock *DstT, 99 const CFGBlock *DstF) = 0;
|
| H A D | WorkList.h | 24 class CFGBlock; variable 31 const CFGBlock *block; 36 const CFGBlock *B, unsigned idx) in WorkListUnit() 55 const CFGBlock *getBlock() const { return block; } in getBlock() 69 void enqueue(ExplodedNode *N, const CFGBlock *B, unsigned idx) { in enqueue()
|
| /freebsd-12.1/contrib/llvm/tools/clang/include/clang/Analysis/ |
| H A D | CFG.h | 552 class CFGBlock { 628 CFGBlock *ReachableBlock; 637 AdjacentBlock(CFGBlock *B, CFGBlock *AlternateBlock); 651 operator CFGBlock*() const { 655 CFGBlock& operator *() const { 659 CFGBlock* operator ->() const { 786 const CFGBlock *Dst); 793 const CFGBlock *From; 1054 CFGBlock *createBlock(); 1199 CFGBlock *Entry = nullptr; [all …]
|
| H A D | ProgramPoint.h | 235 const CFGBlock *getBlock() const { in getBlock() 240 const CFGBlock *B = getBlock(); in getFirstElement() 254 BlockExit(const CFGBlock *B, const LocationContext *L) in BlockExit() 257 const CFGBlock *getBlock() const { in getBlock() 344 const CFGBlock *getBlock() const { in getBlock() 507 BlockEdge(const CFGBlock *B1, const CFGBlock *B2, const LocationContext *L) in BlockEdge() 513 const CFGBlock *getSrc() const { in getSrc() 514 return static_cast<const CFGBlock*>(getData1()); in getSrc() 517 const CFGBlock *getDst() const { in getDst() 518 return static_cast<const CFGBlock*>(getData2()); in getDst() [all …]
|
| H A D | AnalysisDeclContext.h | 134 const CFGBlock *getBlockForRegisteredExpression(const Stmt *stmt); 188 const CFGBlock *Blk, 299 const CFGBlock *Block; 305 const Stmt *s, const CFGBlock *blk, in StackFrameContext() 316 const CFGBlock *getCallSiteBlock() const { return Block; } in getCallSiteBlock() 327 const CFGBlock *blk, unsigned idx) { in Profile() 409 const CFGBlock *blk, unsigned idx); 482 const CFGBlock *Blk, in getStackFrame() 497 const CFGBlock *Blk, in getStackFrame()
|
| /freebsd-12.1/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | UnreachableCodeChecker.cpp | 40 static inline const Stmt *getUnreachableStmt(const CFGBlock *CB); 41 static void FindUnreachableEntryPoints(const CFGBlock *CB, 44 static bool isInvalidPath(const CFGBlock *CB, const ParentMap &PM); 45 static inline bool isEmptyCFGBlock(const CFGBlock *CB); 79 const CFGBlock *CB = BE->getBlock(); in checkEndAnalysis() 97 const CFGBlock *CB = *I; in checkEndAnalysis() 131 for (CFGBlock::const_iterator ci = CB->begin(), ce = CB->end(); in checkEndAnalysis() 179 void UnreachableCodeChecker::FindUnreachableEntryPoints(const CFGBlock *CB, in FindUnreachableEntryPoints() 219 bool UnreachableCodeChecker::isInvalidPath(const CFGBlock *CB, in isInvalidPath() 231 const CFGBlock *pred = *CB->pred_begin(); in isInvalidPath() [all …]
|
| H A D | AnalyzerStatsChecker.cpp | 46 llvm::SmallPtrSet<const CFGBlock*, 32> reachable; in checkEndAnalysis() 64 const CFGBlock *CB = BE->getBlock(); in checkEndAnalysis() 76 const CFGBlock *CB = *I; in checkEndAnalysis() 124 const CFGBlock *Exit = BE.getDst(); in checkEndAnalysis()
|
| H A D | DeadStoresChecker.cpp | 76 bool isReachable(const CFGBlock *block) const { in isReachable() 86 SmallVector<const CFGBlock*, 10> worklist; in computeReachableBlocks() 90 const CFGBlock *block = worklist.pop_back_val(); in computeReachableBlocks() 95 for (CFGBlock::const_succ_iterator i = block->succ_begin(), in computeReachableBlocks() 97 if (const CFGBlock *succ = *i) in computeReachableBlocks() 132 const CFGBlock *currentBlock; 259 void observeStmt(const Stmt *S, const CFGBlock *block, in observeStmt()
|
| /freebsd-12.1/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ |
| H A D | CoreEngine.cpp | 86 const CFGBlock *Entry = &(L->getCFG()->getEntry()); in ExecuteWorkList() 98 const CFGBlock *Succ = *(Entry->succ_begin()); in ExecuteWorkList() 211 const CFGBlock *Blk = L.getDst(); in HandleBlockEdge() 314 for (CFGBlock::const_succ_iterator it = B->succ_begin(), in HandleBlockExit() 316 if (const CFGBlock *succ = *it) { in HandleBlockExit() 408 const CFGBlock *B, in HandleCleanupTemporaryBranch() 419 void CoreEngine::HandleStaticInit(const DeclStmt *DS, const CFGBlock *B, in HandleStaticInit() 430 void CoreEngine::HandlePostStmt(const CFGBlock *B, unsigned StmtIdx, in HandlePostStmt() 463 const CFGBlock *Block, unsigned Idx) { in enqueueStmtNode() 532 const CFGBlock *Block, unsigned Idx) { in enqueue() [all …]
|
| /freebsd-12.1/contrib/llvm/tools/clang/lib/Sema/ |
| H A D | AnalysisBasedWarnings.cpp | 205 llvm::SmallPtrSet<CFGBlock *, 16> Visited; in checkForRecursiveFunctionCall() 206 llvm::SmallVector<CFGBlock *, 16> WorkList; in checkForRecursiveFunctionCall() 216 CFGBlock *Block = WorkList.pop_back_val(); in checkForRecursiveFunctionCall() 219 if (CFGBlock *SuccBlock = *I) { in checkForRecursiveFunctionCall() 266 SmallVector<CFGBlock *, 16> Stack; in throwEscapes() 273 CFGBlock &UnwindBlock = *Stack.back(); in throwEscapes() 306 for (CFGBlock *B : *BodyCFG) { in visitReachableThrows() 417 CFGBlock::FilterOptions FO; in CheckFallThrough() 420 for (CFGBlock::filtered_pred_iterator I = in CheckFallThrough() 423 const CFGBlock &B = **I; in CheckFallThrough() [all …]
|
| /freebsd-12.1/contrib/llvm/tools/clang/include/clang/Analysis/FlowSensitive/ |
| H A D | DataflowValues.h | 52 typedef llvm::DenseMap<const CFGBlock*, ValTy> BlockDataMapTy; 101 ValTy& getBlockData(const CFGBlock *B) { in getBlockData() 107 const ValTy& getBlockData(const CFGBlock *B) const { in getBlockData()
|