Static Value-Flow Analysis
|
#include <SVFGNode.h>
Public Member Functions | |
const NodeBS & | getPointsTo () const |
Return points-to of the MR. More... | |
const NodeBS | getDefSVFVars () const override |
Return the left hand side SVF Vars. More... | |
virtual const std::string | toString () const override |
Public Member Functions inherited from SVF::VFGNode | |
VFGNode (NodeID i, VFGNodeK k) | |
Constructor. More... | |
virtual const ICFGNode * | getICFGNode () const |
Return corresponding ICFG node. More... | |
virtual void | setICFGNode (const ICFGNode *node) |
Set corresponding ICFG node. More... | |
virtual const SVFFunction * | getFun () const |
Get the function of this SVFGNode. More... | |
virtual const SVFValue * | getValue () const |
Return the corresponding LLVM value, if possible, nullptr otherwise. More... | |
Public Member Functions inherited from SVF::GenericNode< NodeTy, EdgeTy > | |
GenericNode (NodeID i, GNodeK k) | |
Constructor. More... | |
virtual | ~GenericNode () |
Destructor. More... | |
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 necessary. 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) |
EdgeType * | hasIncomingEdge (EdgeType *edge) const |
Find incoming and outgoing edges. More... | |
EdgeType * | hasOutgoingEdge (EdgeType *edge) const |
const GEdgeSetTy & | getOutEdges () const |
const GEdgeSetTy & | getInEdges () const |
u32_t | removeIncomingEdge (EdgeType *edge) |
u32_t | removeOutgoingEdge (EdgeType *edge) |
Public Member Functions inherited from SVF::SVFBaseNode | |
SVFBaseNode (NodeID i, GNodeK k, SVFType *ty=nullptr) | |
NodeID | getId () const |
Get ID. More... | |
GNodeK | getNodeKind () const |
Get node kind. More... | |
virtual const SVFType * | getType () const |
virtual void | setSourceLoc (const std::string &sourceCodeInfo) |
virtual const std::string | getSourceLoc () const |
const std::string | valueOnlyToString () const |
Static Public Member Functions | |
static bool | classof (const MRSVFGNode *) |
Methods for support type inquiry through isa, cast, and dyn_cast: More... | |
static bool | classof (const VFGNode *node) |
static bool | classof (const GenericVFGNodeTy *node) |
Static Public Member Functions inherited from SVF::VFGNode | |
static bool | classof (const VFGNode *) |
static bool | classof (const GenericVFGNodeTy *node) |
static bool | classof (const SVFBaseNode *node) |
Static Public Member Functions inherited from SVF::GenericNode< NodeTy, EdgeTy > | |
static bool | classof (const GenericNode< NodeTy, EdgeTy > *) |
static bool | classof (const SVFBaseNode *) |
Protected Member Functions | |
MRSVFGNode (NodeID id, VFGNodeK k) | |
Protected Attributes | |
NodeBS | cpts |
Protected Attributes inherited from SVF::VFGNode | |
const ICFGNode * | icfgNode |
Protected Attributes inherited from SVF::SVFBaseNode | |
NodeID | id |
Node ID. More... | |
GNodeK | nodeKind |
Node kind. More... | |
const SVFType * | type |
SVF type. More... | |
std::string | sourceLoc |
Source code information of this value. More... | |
Memory region VFGNode (for address-taken objects)
Definition at line 42 of file SVFGNode.h.
Definition at line 48 of file SVFGNode.h.
|
inlinestatic |
Definition at line 69 of file SVFGNode.h.
|
inlinestatic |
Methods for support type inquiry through isa, cast, and dyn_cast:
Definition at line 61 of file SVFGNode.h.
|
inlinestatic |
Definition at line 65 of file SVFGNode.h.
|
inlineoverridevirtual |
Return the left hand side SVF Vars.
Implements SVF::VFGNode.
Definition at line 44 of file SVFG.cpp.
|
inline |
Return points-to of the MR.
Definition at line 52 of file SVFGNode.h.
|
overridevirtual |
Reimplemented from SVF::VFGNode.
Reimplemented in SVF::InterMSSAPHISVFGNode, SVF::IntraMSSAPHISVFGNode, SVF::MSSAPHISVFGNode, SVF::ActualOUTSVFGNode, SVF::ActualINSVFGNode, SVF::FormalOUTSVFGNode, and SVF::FormalINSVFGNode.
Definition at line 49 of file SVFG.cpp.
|
protected |
Definition at line 45 of file SVFGNode.h.