|
Static Value-Flow Analysis
|
#include <ICFGEdge.h>
Public Types | |
| enum | ICFGEdgeK { IntraCF , CallCF , RetCF } |
| typedef ICFGEdgeK | SVFGEdgeK |
| typedef GenericNode< ICFGNode, ICFGEdge >::GEdgeSetTy | ICFGEdgeSetTy |
| typedef ICFGEdgeSetTy | SVFGEdgeSetTy |
Public Types inherited from SVF::GenericEdge< NodeTy > | |
| typedef NodeTy | NodeType |
| Node type. | |
| typedef u64_t | GEdgeFlag |
| typedef s64_t | GEdgeKind |
| typedef struct SVF::GenericEdge::equalGEdge | equalGEdge |
| Add the hash function for std::set (we also can overload operator< to implement this) | |
Public Member Functions | |
| ICFGEdge (ICFGNode *s, ICFGNode *d, GEdgeFlag k) | |
| Constructor. | |
| ~ICFGEdge () | |
| Destructor. | |
| bool | isCFGEdge () const |
| Get methods of the components. | |
| bool | isCallCFGEdge () const |
| bool | isRetCFGEdge () const |
| bool | isIntraCFGEdge () const |
| virtual const std::string | toString () const |
Public Member Functions inherited from SVF::GenericEdge< NodeTy > | |
| GenericEdge (NodeTy *s, NodeTy *d, GEdgeFlag k) | |
| Constructor. | |
| virtual | ~GenericEdge () |
| Destructor. | |
| NodeID | getSrcID () const |
| get methods of the components | |
| NodeID | getDstID () const |
| GEdgeKind | getEdgeKind () const |
| GEdgeKind | getEdgeKindWithoutMask () const |
| NodeType * | getSrcNode () const |
| NodeType * | getDstNode () const |
| virtual bool | operator== (const GenericEdge< NodeType > *rhs) const |
Static Public Member Functions | |
| static GEdgeFlag | makeEdgeFlagWithInvokeID (GEdgeKind k, CallSiteID cs) |
| Compute the unique edgeFlag value from edge kind and CallSiteID. | |
Friends | |
| OutStream & | operator<< (OutStream &o, const ICFGEdge &edge) |
| Overloading operator << for dumping ICFG node ID. | |
Additional Inherited Members | |
Static Protected Attributes inherited from SVF::GenericEdge< NodeTy > | |
| static constexpr unsigned char | EdgeKindMaskBits = 8 |
| We use the lower 8 bits to denote edge kind. | |
| static constexpr u64_t | EdgeKindMask = (~0ULL) >> (64 - EdgeKindMaskBits) |
Definition at line 44 of file ICFGEdge.h.
| typedef GenericNode<ICFGNode,ICFGEdge>::GEdgeSetTy SVF::ICFGEdge::ICFGEdgeSetTy |
Definition at line 88 of file ICFGEdge.h.
Definition at line 58 of file ICFGEdge.h.
Definition at line 89 of file ICFGEdge.h.
|
inline |
|
inline |
Definition at line 75 of file ICFGEdge.h.
|
inline |
|
inline |
Definition at line 83 of file ICFGEdge.h.
|
inline |
Definition at line 79 of file ICFGEdge.h.
|
inlinestatic |
Compute the unique edgeFlag value from edge kind and CallSiteID.
Definition at line 91 of file ICFGEdge.h.
|
virtual |
Reimplemented in SVF::IntraCFGEdge, SVF::CallCFGEdge, and SVF::RetCFGEdge.
Definition at line 165 of file ICFG.cpp.