16 #ifndef LLVM_CLANG_ANALYSIS_ANALYSES_CFGREACHABILITYANALYSIS_H 17 #define LLVM_CLANG_ANALYSIS_ANALYSES_CFGREACHABILITYANALYSIS_H 19 #include "llvm/ADT/BitVector.h" 20 #include "llvm/ADT/DenseMap.h" 33 using ReachableSet = llvm::BitVector;
34 using ReachableMap = llvm::DenseMap<unsigned, ReachableSet>;
36 ReachableSet analyzed;
37 ReachableMap reachable;
46 void mapReachability(
const CFGBlock *Dst);
51 #endif // LLVM_CLANG_ANALYSIS_ANALYSES_CFGREACHABILITYANALYSIS_H
Represents a single basic block in a source-level CFG.
Represents a source-level, intra-procedural CFG that represents the control-flow of a Stmt...
bool isReachable(const CFGBlock *Src, const CFGBlock *Dst)
Returns true if the block 'Dst' can be reached from block 'Src'.
CFGReverseBlockReachabilityAnalysis(const CFG &cfg)
Dataflow Directional Tag Classes.