Static Value-Flow Analysis
|
#include <SVFGStat.h>
Public Types | |
typedef Set< const SVFGNode * > | SVFGNodeSet |
typedef OrderedSet< const SVFGEdge * > | SVFGEdgeSet |
typedef SCCDetection< SVFG * > | SVFGSCC |
Public Types inherited from SVF::SVFStat | |
enum | ClockType { Wall , CPU } |
typedef OrderedMap< std::string, u32_t > | NUMStatMap |
typedef OrderedMap< std::string, double > | TIMEStatMap |
Public Member Functions | |
SVFGStat (SVFG *g) | |
virtual | ~SVFGStat () |
virtual void | performStat () override |
virtual void | printStat (std::string str="") override |
virtual void | performSCCStat (SVFGEdgeSet insensitiveCalRetEdges) |
void | dirVFEdgeStart () |
void | dirVFEdgeEnd () |
void | indVFEdgeStart () |
void | indVFEdgeEnd () |
void | TLVFNodeStart () |
void | TLVFNodeEnd () |
void | ATVFNodeStart () |
void | ATVFNodeEnd () |
void | sfvgOptStart () |
void | sfvgOptEnd () |
void | addToSources (const SVFGNode *node) |
void | addToSinks (const SVFGNode *node) |
void | addToForwardSlice (const SVFGNode *node) |
void | addToBackwardSlice (const SVFGNode *node) |
bool | inForwardSlice (const SVFGNode *node) const |
bool | inBackwardSlice (const SVFGNode *node) const |
bool | isSource (const SVFGNode *node) const |
bool | isSink (const SVFGNode *node) const |
Public Member Functions inherited from SVF::PTAStat | |
PTAStat (PointerAnalysis *p) | |
virtual | ~PTAStat () |
void | setMemUsageBefore (u32_t vmrss, u32_t vmsize) |
void | setMemUsageAfter (u32_t vmrss, u32_t vmsize) |
void | performStat () override |
void | callgraphStat () override |
Public Member Functions inherited from SVF::SVFStat | |
SVFStat () | |
virtual | ~SVFStat () |
virtual void | startClk () |
virtual void | endClk () |
virtual void | performStatPerQuery (NodeID) |
virtual void | printStatPerQuery (NodeID, const PointsTo &) |
Private Member Functions | |
void | clear () |
void | processGraph () |
void | calculateNodeDegrees (SVFGNode *node, NodeSet &nodeHasIndInEdge, NodeSet &nodeHasIndOutEdge) |
NodeID | getSCCRep (SVFGSCC *scc, NodeID id) const |
NodeID | nodeInCycle (SVFGSCC *scc, NodeID id) const |
Additional Inherited Members | |
Static Public Member Functions inherited from SVF::SVFStat | |
static double | getClk (bool mark=false) |
Public Attributes inherited from SVF::PTAStat | |
NodeBS | localVarInRecursion |
Public Attributes inherited from SVF::SVFStat | |
NUMStatMap | generalNumMap |
NUMStatMap | PTNumStatMap |
TIMEStatMap | timeStatMap |
double | startTime |
double | endTime |
Static Public Attributes inherited from SVF::SVFStat | |
static bool | printGeneralStats = true |
SVF's general statistics are only printed once even if you run multiple anayses. More... | |
static double | timeOfBuildingLLVMModule = 0 |
static double | timeOfBuildingSymbolTable = 0 |
static double | timeOfBuildingSVFIR = 0 |
Protected Attributes inherited from SVF::PTAStat | |
PointerAnalysis * | pta |
u32_t | _vmrssUsageBefore |
u32_t | _vmrssUsageAfter |
u32_t | _vmsizeUsageBefore |
u32_t | _vmsizeUsageAfter |
Definition at line 92 of file SVFGStat.h.
typedef OrderedSet<const SVFGEdge*> SVF::SVFGStat::SVFGEdgeSet |
Definition at line 96 of file SVFGStat.h.
typedef Set<const SVFGNode*> SVF::SVFGStat::SVFGNodeSet |
Definition at line 95 of file SVFGStat.h.
typedef SCCDetection<SVFG*> SVF::SVFGStat::SVFGSCC |
Definition at line 97 of file SVFGStat.h.
SVFGStat::SVFGStat | ( | SVFG * | g | ) |
Constructor
Definition at line 136 of file SVFGStat.cpp.
|
inlinevirtual |
Definition at line 101 of file SVFGStat.h.
|
inline |
Definition at line 249 of file SVFGStat.h.
|
inline |
Definition at line 245 of file SVFGStat.h.
|
inline |
Definition at line 241 of file SVFGStat.h.
|
inline |
Definition at line 237 of file SVFGStat.h.
|
inline |
Definition at line 144 of file SVFGStat.h.
|
inline |
Definition at line 139 of file SVFGStat.h.
|
private |
Definition at line 302 of file SVFGStat.cpp.
|
private |
Definition at line 148 of file SVFGStat.cpp.
|
inline |
Definition at line 114 of file SVFGStat.h.
|
inline |
Definition at line 109 of file SVFGStat.h.
Definition at line 169 of file SVFGStat.cpp.
|
inline |
Definition at line 257 of file SVFGStat.h.
|
inline |
Definition at line 124 of file SVFGStat.h.
|
inline |
Definition at line 119 of file SVFGStat.h.
|
inline |
Definition at line 253 of file SVFGStat.h.
|
inline |
Definition at line 265 of file SVFGStat.h.
|
inline |
Definition at line 261 of file SVFGStat.h.
Definition at line 173 of file SVFGStat.cpp.
|
virtual |
Definition at line 369 of file SVFGStat.cpp.
|
overridevirtual |
Implements SVF::SVFStat.
Definition at line 178 of file SVFGStat.cpp.
|
overridevirtual |
Reimplemented from SVF::SVFStat.
Definition at line 499 of file SVFGStat.cpp.
|
private |
Definition at line 244 of file SVFGStat.cpp.
|
inline |
Definition at line 154 of file SVFGStat.h.
|
inline |
Definition at line 149 of file SVFGStat.h.
|
inline |
Definition at line 134 of file SVFGStat.h.
|
inline |
Definition at line 129 of file SVFGStat.h.
|
private |
Definition at line 220 of file SVFGStat.h.
|
private |
Definition at line 219 of file SVFGStat.h.
|
private |
Definition at line 217 of file SVFGStat.h.
|
private |
Definition at line 216 of file SVFGStat.h.
|
private |
average in degrees of SVFG nodes.
Definition at line 206 of file SVFGStat.h.
|
private |
average indirect in degrees of SVFG nodes.
Definition at line 211 of file SVFGStat.h.
|
private |
average indirect out degrees of SVFG nodes.
Definition at line 212 of file SVFGStat.h.
|
private |
average out degrees of SVFG nodes.
Definition at line 207 of file SVFGStat.h.
|
private |
average weight.
Definition at line 204 of file SVFGStat.h.
|
private |
Definition at line 232 of file SVFGStat.h.
|
private |
Definition at line 223 of file SVFGStat.h.
|
private |
Definition at line 222 of file SVFGStat.h.
|
private |
Definition at line 226 of file SVFGStat.h.
|
private |
Definition at line 225 of file SVFGStat.h.
|
private |
Definition at line 231 of file SVFGStat.h.
|
private |
Definition at line 170 of file SVFGStat.h.
|
private |
max in degrees of SVFG nodes.
Definition at line 208 of file SVFGStat.h.
|
private |
max indirect in degrees of SVFG nodes.
Definition at line 213 of file SVFGStat.h.
|
private |
max indirect out degrees of SVFG nodes.
Definition at line 214 of file SVFGStat.h.
|
private |
max out degrees of SVFG nodes.
Definition at line 209 of file SVFGStat.h.
|
private |
number of actual in svfg nodes.
Definition at line 179 of file SVFGStat.h.
|
private |
number of actual out svfg nodes.
Definition at line 180 of file SVFGStat.h.
|
private |
Definition at line 181 of file SVFGStat.h.
|
private |
Definition at line 182 of file SVFGStat.h.
|
private |
Definition at line 188 of file SVFGStat.h.
|
private |
Definition at line 186 of file SVFGStat.h.
|
private |
number of formal in svfg nodes.
Definition at line 174 of file SVFGStat.h.
|
private |
number of formal out svfg nodes.
Definition at line 175 of file SVFGStat.h.
|
private |
Definition at line 176 of file SVFGStat.h.
|
private |
Definition at line 177 of file SVFGStat.h.
|
private |
Definition at line 187 of file SVFGStat.h.
|
private |
number of load svfg nodes.
Definition at line 184 of file SVFGStat.h.
|
private |
number of mssa phi svfg nodes.
Definition at line 190 of file SVFGStat.h.
|
private |
number of svfg nodes.
Definition at line 172 of file SVFGStat.h.
|
private |
Definition at line 191 of file SVFGStat.h.
|
private |
number of store svfg nodes.
Definition at line 185 of file SVFGStat.h.
|
private |
Definition at line 234 of file SVFGStat.h.
|
private |
Definition at line 233 of file SVFGStat.h.
|
private |
Definition at line 229 of file SVFGStat.h.
|
private |
Definition at line 228 of file SVFGStat.h.
|
private |
Definition at line 201 of file SVFGStat.h.
|
private |
Definition at line 202 of file SVFGStat.h.
|
private |
Definition at line 199 of file SVFGStat.h.
|
private |
Total number of l –o--> lp.
Definition at line 197 of file SVFGStat.h.
|
private |
Total number of indirect SVFG edges.
Definition at line 195 of file SVFGStat.h.
|
private |
Definition at line 196 of file SVFGStat.h.
|
private |
Definition at line 200 of file SVFGStat.h.
|
private |
Total number of incoming SVFG edges.
Definition at line 193 of file SVFGStat.h.
|
private |
Total number of outgoing SVFG edges.
Definition at line 194 of file SVFGStat.h.