clang: include/clang/Analysis/Analyses/CFGReachabilityAnalysis.h Source File (original) (raw)
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15#ifndef LLVM_CLANG_ANALYSIS_ANALYSES_CFGREACHABILITYANALYSIS_H
16#define LLVM_CLANG_ANALYSIS_ANALYSES_CFGREACHABILITYANALYSIS_H
17
18#include "llvm/ADT/BitVector.h"
19#include "llvm/ADT/DenseMap.h"
20
22
23class CFG;
24class CFGBlock;
25
26
27
28
29
30
32 using ReachableSet = llvm::BitVector;
33 using ReachableMap = llvm::DenseMap<unsigned, ReachableSet>;
34
35 ReachableSet analyzed;
36 ReachableMap reachable;
37
38public:
40
41
43
44private:
45 void mapReachability(const CFGBlock *Dst);
46};
47
48}
49
50#endif
Represents a single basic block in a source-level CFG.
bool isReachable(const CFGBlock *Src, const CFGBlock *Dst)
Returns true if the block 'Dst' can be reached from block 'Src'.
Represents a source-level, intra-procedural CFG that represents the control-flow of a Stmt.
The JSON file list parser is used to communicate input to InstallAPI.