Static Value-Flow Analysis
|
#include <SrcSnkSolver.h>
Public Types | |
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. | |
Protected Member Functions | |
SrcSnkSolver () | |
Constructor. | |
virtual | ~SrcSnkSolver () |
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) |
Private Attributes | |
GraphType | _graph |
Graph. | |
WorkList | worklist |
Worklist for resolution. | |
Definition at line 44 of file SrcSnkSolver.h.
typedef GTraits::ChildIteratorType SVF::SrcSnkSolver< GraphType, DPIm >::child_iterator |
Definition at line 53 of file SrcSnkSolver.h.
typedef GTraits::EdgeType SVF::SrcSnkSolver< GraphType, DPIm >::GEDGE |
Definition at line 51 of file SrcSnkSolver.h.
typedef GTraits::NodeType SVF::SrcSnkSolver< GraphType, DPIm >::GNODE |
Definition at line 50 of file SrcSnkSolver.h.
typedef SVF::GenericGraphTraits<GraphType> SVF::SrcSnkSolver< GraphType, DPIm >::GTraits |
Define the GTraits and node iterator.
Definition at line 49 of file SrcSnkSolver.h.
typedef InvGTraits::ChildIteratorType SVF::SrcSnkSolver< GraphType, DPIm >::inv_child_iterator |
Definition at line 57 of file SrcSnkSolver.h.
typedef SVF::GenericGraphTraits<SVF::Inverse<GNODE *> > SVF::SrcSnkSolver< GraphType, DPIm >::InvGTraits |
Define inverse GTraits and note iterator.
Definition at line 56 of file SrcSnkSolver.h.
typedef GTraits::nodes_iterator SVF::SrcSnkSolver< GraphType, DPIm >::node_iterator |
Definition at line 52 of file SrcSnkSolver.h.
typedef FIFOWorkList<DPIm> SVF::SrcSnkSolver< GraphType, DPIm >::WorkList |
Define worklist.
Definition at line 60 of file SrcSnkSolver.h.
|
inlineprotected |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
CFL forward traverse solve.
Definition at line 112 of file SrcSnkSolver.h.
|
inlineprotectedvirtual |
Definition at line 135 of file SrcSnkSolver.h.
|
inlineprotectedvirtual |
Definition at line 147 of file SrcSnkSolver.h.
|
inlineprotectedvirtual |
CFL forward traverse solve.
Definition at line 93 of file SrcSnkSolver.h.
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
Propagation for the solving, to be implemented in the child class.
Definition at line 141 of file SrcSnkSolver.h.
|
inlineprotected |
Definition at line 84 of file SrcSnkSolver.h.
|
inlineprotectedvirtual |
Definition at line 88 of file SrcSnkSolver.h.
|
inlineprotected |
|
inlineprotected |
Definition at line 168 of file SrcSnkSolver.h.
|
inlineprotected |
Definition at line 164 of file SrcSnkSolver.h.
|
inlineprotected |
Worklist operations.
Definition at line 156 of file SrcSnkSolver.h.
|
inlineprotected |
Definition at line 160 of file SrcSnkSolver.h.
|
inlineprotected |
Definition at line 78 of file SrcSnkSolver.h.
|
private |
Graph.
Definition at line 177 of file SrcSnkSolver.h.
|
private |
Worklist for resolution.
Definition at line 180 of file SrcSnkSolver.h.