|
enum | LEAK_TYPE { NEVER_FREE_LEAK
, CONTEXT_LEAK
, PATH_LEAK
, GLOBAL_LEAK
} |
|
typedef Map< const SVFGNode *, const CallICFGNode * > | SVFGNodeToCSIDMap |
|
typedef FIFOWorkList< const CallICFGNode * > | CSWorkList |
|
typedef ProgSlice::VFWorkList | WorkList |
|
typedef NodeBS | SVFGNodeBS |
|
typedef ProgSlice::SVFGNodeSet | SVFGNodeSet |
|
typedef Map< const SVFGNode *, ProgSlice * > | SVFGNodeToSliceMap |
|
typedef SVFGNodeSet::const_iterator | SVFGNodeSetIter |
|
typedef CxtDPItem | DPIm |
|
typedef Set< DPIm > | DPImSet |
| dpitem set
|
|
typedef Map< const SVFGNode *, DPImSet > | SVFGNodeToDPItemsMap |
| map a SVFGNode to its visited dpitems
|
|
typedef Set< const CallICFGNode * > | CallSiteSet |
|
typedef NodeBS | SVFGNodeBS |
|
typedef ProgSlice::VFWorkList | WorkList |
|
typedef SVF::GenericGraphTraits< GraphType > | GTraits |
| Define the GTraits and node iterator.
|
|
typedef GTraits::NodeType | GNODE |
|
typedef GTraits::EdgeType | GEDGE |
|
typedef GTraits::nodes_iterator | node_iterator |
|
typedef GTraits::ChildIteratorType | child_iterator |
|
typedef SVF::GenericGraphTraits< SVF::Inverse< GNODE * > > | InvGTraits |
| Define inverse GTraits and note iterator.
|
|
typedef InvGTraits::ChildIteratorType | inv_child_iterator |
|
typedef FIFOWorkList< DPIm > | WorkList |
| Define worklist.
|
|
void | testsValidation (const ProgSlice *slice) |
| Validate test cases for regression test purpose.
|
|
void | validateSuccessTests (const SVFGNode *source, const SVFFunction *fun) |
|
void | validateExpectedFailureTests (const SVFGNode *source, const SVFFunction *fun) |
|
void | addSrcToCSID (const SVFGNode *src, const CallICFGNode *cs) |
| Record a source to its callsite.
|
|
const CallICFGNode * | getSrcCSID (const SVFGNode *src) |
|
void | FWProcessCurNode (const DPIm &item) override |
| Forward traverse.
|
|
void | BWProcessCurNode (const DPIm &item) override |
| Backward traverse.
|
|
void | FWProcessOutgoingEdge (const DPIm &item, SVFGEdge *edge) override |
| Propagate information forward by matching context.
|
|
void | BWProcessIncomingEdge (const DPIm &item, SVFGEdge *edge) override |
| Propagate information backward without matching context, as forward analysis already did it.
|
|
bool | forwardVisited (const SVFGNode *node, const DPIm &item) |
| Whether has been visited or not, in order to avoid recursion on SVFG.
|
|
void | addForwardVisited (const SVFGNode *node, const DPIm &item) |
|
bool | backwardVisited (const SVFGNode *node) |
|
void | addBackwardVisited (const SVFGNode *node) |
|
void | clearVisitedMap () |
|
virtual bool | isAllPathReachable () |
| Whether it is all path reachable from a source.
|
|
virtual bool | isSomePathReachable () |
| Whether it is some path reachable from a source.
|
|
void | dumpSlices () |
| Dump SVFG with annotated slice information.
|
|
void | annotateSlice (ProgSlice *slice) |
|
void | printZ3Stat () |
|
| GraphReachSolver () |
| Constructor.
|
|
virtual | ~GraphReachSolver () |
| Destructor.
|
|
const GraphType | graph () const |
| Get/Set graph methods.
|
|
void | setGraph (GraphType g) |
|
GNODE * | getNode (NodeID id) const |
|
virtual NodeID | getNodeIDFromItem (const DPIm &item) const |
|
virtual void | forwardTraverse (DPIm &it) |
| CFL forward traverse solve.
|
|
virtual void | backwardTraverse (DPIm &it) |
| CFL forward traverse solve.
|
|
virtual void | FWProcessCurNode (const DPIm &) |
| Process the DP item.
|
|
virtual void | BWProcessCurNode (const DPIm &) |
|
virtual void | FWProcessOutgoingEdge (const DPIm &item, GEDGE *edge) |
| Propagation for the solving, to be implemented in the child class.
|
|
virtual void | BWProcessIncomingEdge (const DPIm &item, GEDGE *edge) |
|
DPIm | popFromWorklist () |
| Worklist operations.
|
|
bool | pushIntoWorklist (DPIm &item) |
|
bool | isWorklistEmpty () |
|
bool | isInWorklist (DPIm &item) |
|
SaberSVFGBuilder | memSSA |
|
SVFG * | svfg |
|
PTACallGraph * | callgraph |
|
SVFBugReport | report |
|
File open/close checker to check consistency of file operations
Definition at line 42 of file FileChecker.h.