|
SVF
|
#include <ICFGNode.h>
Public Types | |
| typedef std::vector< const PAGNode * > | ActualParmVFGNodeVec |
Public Types inherited from SVF::ICFGNode | |
| 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 |
Public Types inherited from SVF::GenericNode< NodeTy, EdgeTy > | |
| 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 |
Public Member Functions | |
| CallBlockNode (NodeID id, const Instruction *c) | |
| const Instruction * | getCallSite () const |
| Return callsite. More... | |
| const RetBlockNode * | getRetBlockNode () const |
| Return callsite. More... | |
| void | setRetBlockNode (const RetBlockNode *r) |
| Return callsite. More... | |
| const SVFFunction * | getCaller () const |
| Return callsite. More... | |
| const BasicBlock * | getParent () const |
| Return Basic Block. More... | |
| bool | isIndirectCall () const |
| Return true if this is an indirect call. More... | |
| const ActualParmVFGNodeVec & | getActualParms () const |
| Return the set of actual parameters. More... | |
| void | addActualParms (const PAGNode *ap) |
| Add actual parameters. More... | |
| virtual const std::string | toString () const |
Public Member Functions inherited from SVF::InterBlockNode | |
| InterBlockNode (NodeID id, ICFGNodeK k) | |
| Constructor. More... | |
Public Member Functions inherited from SVF::ICFGNode | |
| 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 |
Public Member Functions inherited from SVF::GenericNode< NodeTy, EdgeTy > | |
| 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 CallBlockNode *) |
| Methods for support type inquiry through isa, cast, and dyn_cast: More... | |
| static bool | classof (const ICFGNode *node) |
| static bool | classof (const InterBlockNode *node) |
| static bool | classof (const GenericICFGNodeTy *node) |
Static Public Member Functions inherited from SVF::InterBlockNode | |
| static bool | classof (const InterBlockNode *) |
| 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 * | cs |
| const RetBlockNode * | ret |
| ActualParmVFGNodeVec | APNodes |
Additional Inherited Members | |
Protected Attributes inherited from SVF::ICFGNode | |
| const SVFFunction * | fun |
| const BasicBlock * | bb |
| VFGNodeList | VFGNodes |
| PAGEdgeList | pagEdges |
Call ICFGNode containing a set of ActualParmVFGNodes at a callsite
Definition at line 364 of file ICFGNode.h.
| typedef std::vector<const PAGNode *> SVF::CallBlockNode::ActualParmVFGNodeVec |
Definition at line 368 of file ICFGNode.h.
|
inline |
Definition at line 374 of file ICFGNode.h.
|
inline |
|
inlinestatic |
Methods for support type inquiry through isa, cast, and dyn_cast:
Definition at line 431 of file ICFGNode.h.
|
inlinestatic |
Definition at line 436 of file ICFGNode.h.
|
inlinestatic |
Definition at line 441 of file ICFGNode.h.
|
inlinestatic |
Definition at line 446 of file ICFGNode.h.
|
inline |
|
inline |
Return callsite.
Definition at line 400 of file ICFGNode.h.
|
inline |
Return callsite.
Definition at line 381 of file ICFGNode.h.
|
inline |
|
inline |
|
inline |
Return true if this is an indirect call.
Definition at line 412 of file ICFGNode.h.
|
inline |
Return callsite.
Definition at line 394 of file ICFGNode.h.
|
virtual |
Reimplemented from SVF::ICFGNode.
Definition at line 114 of file ICFG.cpp.
|
private |
Definition at line 372 of file ICFGNode.h.
|
private |
Definition at line 370 of file ICFGNode.h.
|
private |
Definition at line 371 of file ICFGNode.h.
1.8.13