Static Value-Flow Analysis
|
#include <SVFValue.h>
Public Types | |
typedef Set< const SVFBasicBlock * > | BBSet |
typedef std::vector< const SVFBasicBlock * > | BBList |
typedef BBList | LoopBBs |
Private Attributes | |
BBList | reachableBBs |
reachable BasicBlocks from the function entry. | |
Map< const SVFBasicBlock *, BBSet > | dtBBsMap |
map a BasicBlock to BasicBlocks it Dominates | |
Map< const SVFBasicBlock *, BBSet > | pdtBBsMap |
map a BasicBlock to BasicBlocks it PostDominates | |
Map< const SVFBasicBlock *, BBSet > | dfBBsMap |
map a BasicBlock to its Dominate Frontier BasicBlocks | |
Map< const SVFBasicBlock *, LoopBBs > | bb2LoopMap |
map a BasicBlock (if it is in a loop) to all the BasicBlocks in this loop | |
Map< const SVFBasicBlock *, u32_t > | bb2PdomLevel |
map a BasicBlock to its level in pdom tree, used in findNearestCommonPDominator | |
Map< const SVFBasicBlock *, const SVFBasicBlock * > | bb2PIdom |
map a BasicBlock to its immediate dominator in pdom tree, used in findNearestCommonPDominator | |
Friends | |
class | SVFIRWriter |
class | SVFIRReader |
Definition at line 50 of file SVFValue.h.
typedef std::vector<const SVFBasicBlock*> SVF::SVFLoopAndDomInfo::BBList |
Definition at line 56 of file SVFValue.h.
Definition at line 55 of file SVFValue.h.
Definition at line 57 of file SVFValue.h.
|
inline |
Definition at line 69 of file SVFValue.h.
|
inlinevirtual |
Definition at line 73 of file SVFValue.h.
|
inline |
Definition at line 103 of file SVFValue.h.
bool SVFLoopAndDomInfo::dominate | ( | const SVFBasicBlock * | bbKey, |
const SVFBasicBlock * | bbValue | ||
) | const |
Definition at line 54 of file SVFValue.cpp.
const SVFBasicBlock * SVFLoopAndDomInfo::findNearestCommonPDominator | ( | const SVFBasicBlock * | A, |
const SVFBasicBlock * | B | ||
) | const |
find nearest common post dominator of two basic blocks
Definition at line 115 of file SVFValue.cpp.
|
inline |
Definition at line 133 of file SVFValue.h.
|
inline |
Definition at line 128 of file SVFValue.h.
|
inline |
Definition at line 123 of file SVFValue.h.
|
inline |
Definition at line 118 of file SVFValue.h.
|
inline |
Definition at line 80 of file SVFValue.h.
|
inline |
Definition at line 75 of file SVFValue.h.
|
inline |
Definition at line 139 of file SVFValue.h.
|
inline |
Definition at line 144 of file SVFValue.h.
void SVFLoopAndDomInfo::getExitBlocksOfLoop | ( | const SVFBasicBlock * | bb, |
BBList & | exitbbs | ||
) | const |
Definition at line 35 of file SVFValue.cpp.
|
inline |
Definition at line 92 of file SVFValue.h.
const SVFLoopAndDomInfo::LoopBBs & SVFLoopAndDomInfo::getLoopInfo | ( | const SVFBasicBlock * | bb | ) | const |
Definition at line 28 of file SVFValue.cpp.
|
inline |
Definition at line 113 of file SVFValue.h.
|
inline |
Definition at line 108 of file SVFValue.h.
Definition at line 155 of file SVFValue.h.
|
inline |
Definition at line 85 of file SVFValue.h.
bool SVFLoopAndDomInfo::isLoopHeader | ( | const SVFBasicBlock * | bb | ) | const |
Definition at line 141 of file SVFValue.cpp.
|
inline |
Definition at line 149 of file SVFValue.h.
|
inline |
Definition at line 98 of file SVFValue.h.
bool SVFLoopAndDomInfo::postDominate | ( | const SVFBasicBlock * | bbKey, |
const SVFBasicBlock * | bbValue | ||
) | const |
Definition at line 85 of file SVFValue.cpp.
|
inline |
Definition at line 160 of file SVFValue.h.
|
friend |
Definition at line 53 of file SVFValue.h.
|
friend |
Definition at line 52 of file SVFValue.h.
|
private |
map a BasicBlock (if it is in a loop) to all the BasicBlocks in this loop
Definition at line 64 of file SVFValue.h.
|
private |
map a BasicBlock to its level in pdom tree, used in findNearestCommonPDominator
Definition at line 65 of file SVFValue.h.
|
private |
map a BasicBlock to its immediate dominator in pdom tree, used in findNearestCommonPDominator
Definition at line 66 of file SVFValue.h.
|
private |
map a BasicBlock to its Dominate Frontier BasicBlocks
Definition at line 63 of file SVFValue.h.
|
private |
map a BasicBlock to BasicBlocks it Dominates
Definition at line 61 of file SVFValue.h.
|
private |
map a BasicBlock to BasicBlocks it PostDominates
Definition at line 62 of file SVFValue.h.
|
private |
reachable BasicBlocks from the function entry.
Definition at line 60 of file SVFValue.h.