SVF
|
#include <ICFGNode.h>
Public Member Functions | |
IntraBlockNode (NodeID id, const Instruction *i) | |
const Instruction * | getInst () const |
const std::string | toString () const |
![]() | |
ICFGNode (NodeID i, ICFGNodeK k) | |
Constructor. More... | |
virtual const SVFFunction * | getFun () const |
Return the function of this ICFGNode. More... | |
virtual const BasicBlock * | getBB () const |
Return the function of this ICFGNode. More... | |
void | dump () const |
void | addVFGNode (const VFGNode *vfgNode) |
const VFGNodeList & | getVFGNodes () const |
void | addPAGEdge (const PAGEdge *edge) |
const PAGEdgeList & | getPAGEdges () const |
![]() | |
GenericNode (NodeID i, GNodeK k) | |
Constructor. More... | |
virtual | ~GenericNode () |
Destructor. More... | |
NodeID | getId () const |
Get ID. More... | |
GNodeK | getNodeKind () const |
Get node kind. More... | |
const GEdgeSetTy & | getOutEdges () const |
const GEdgeSetTy & | getInEdges () const |
bool | hasIncomingEdge () const |
Has incoming/outgoing edge set. More... | |
bool | hasOutgoingEdge () const |
iterator | OutEdgeBegin () |
iterators More... | |
iterator | OutEdgeEnd () |
iterator | InEdgeBegin () |
iterator | InEdgeEnd () |
const_iterator | OutEdgeBegin () const |
const_iterator | OutEdgeEnd () const |
const_iterator | InEdgeBegin () const |
const_iterator | InEdgeEnd () const |
virtual iterator | directOutEdgeBegin () |
Iterators used for SCC detection, overwrite it in child class if necessory. More... | |
virtual iterator | directOutEdgeEnd () |
virtual iterator | directInEdgeBegin () |
virtual iterator | directInEdgeEnd () |
virtual const_iterator | directOutEdgeBegin () const |
virtual const_iterator | directOutEdgeEnd () const |
virtual const_iterator | directInEdgeBegin () const |
virtual const_iterator | directInEdgeEnd () const |
bool | addIncomingEdge (EdgeType *inEdge) |
Add incoming and outgoing edges. More... | |
bool | addOutgoingEdge (EdgeType *outEdge) |
Size_t | removeIncomingEdge (EdgeType *edge) |
Size_t | removeOutgoingEdge (EdgeType *edge) |
EdgeType * | hasIncomingEdge (EdgeType *edge) const |
Find incoming and outgoing edges. More... | |
EdgeType * | hasOutgoingEdge (EdgeType *edge) const |
Static Public Member Functions | |
static bool | classof (const IntraBlockNode *) |
Methods for support type inquiry through isa, cast, and dyn_cast: More... | |
static bool | classof (const ICFGNode *node) |
static bool | classof (const GenericICFGNodeTy *node) |
Private Attributes | |
const Instruction * | inst |
Additional Inherited Members | |
![]() | |
enum | ICFGNodeK { IntraBlock, FunEntryBlock, FunExitBlock, FunCallBlock, FunRetBlock, GlobalBlock } |
typedef ICFGEdge::ICFGEdgeSetTy::iterator | iterator |
typedef ICFGEdge::ICFGEdgeSetTy::const_iterator | const_iterator |
typedef Set< const CallPE * > | CallPESet |
typedef Set< const RetPE * > | RetPESet |
typedef std::list< const VFGNode * > | VFGNodeList |
typedef std::list< const PAGEdge * > | PAGEdgeList |
![]() | |
typedef NodeTy | NodeType |
typedef EdgeTy | EdgeType |
typedef s32_t | GNodeK |
Edge kind. More... | |
typedef OrderedSet< EdgeType *, typename EdgeType::equalGEdge > | GEdgeSetTy |
typedef GEdgeSetTy::iterator | iterator |
typedef GEdgeSetTy::const_iterator | const_iterator |
![]() | |
const SVFFunction * | fun |
const BasicBlock * | bb |
VFGNodeList | VFGNodes |
PAGEdgeList | pagEdges |
ICFG node stands for a program statement
Definition at line 175 of file ICFGNode.h.
|
inline |
Definition at line 181 of file ICFGNode.h.
|
inlinestatic |
Methods for support type inquiry through isa, cast, and dyn_cast:
Definition at line 194 of file ICFGNode.h.
|
inlinestatic |
Definition at line 199 of file ICFGNode.h.
|
inlinestatic |
Definition at line 204 of file ICFGNode.h.
|
inline |
Definition at line 187 of file ICFGNode.h.
|
virtual |
Reimplemented from SVF::ICFGNode.
Definition at line 80 of file ICFG.cpp.
|
private |
Definition at line 178 of file ICFGNode.h.