|
Static Value-Flow Analysis
|
#include <SVFGEdge.h>
Public Member Functions | |
| RetIndSVFGEdge (VFGNode *s, VFGNode *d, CallSiteID id) | |
| CallSiteID | getCallSiteId () const |
| virtual const std::string | toString () const |
| Public Member Functions inherited from SVF::IndirectSVFGEdge | |
| IndirectSVFGEdge (VFGNode *s, VFGNode *d, GEdgeFlag k) | |
| Constructor. | |
| bool | addPointsTo (const NodeBS &c) |
| Handle memory region. | |
| const NodeBS & | getPointsTo () const |
| Public Member Functions inherited from SVF::VFGEdge | |
| VFGEdge (VFGNode *s, VFGNode *d, GEdgeFlag k) | |
| Constructor. | |
| ~VFGEdge () | |
| Destructor. | |
| bool | isDirectVFGEdge () const |
| Get methods of the components. | |
| bool | isIndirectVFGEdge () const |
| bool | isCallVFGEdge () const |
| bool | isRetVFGEdge () const |
| bool | isCallDirectVFGEdge () const |
| bool | isRetDirectVFGEdge () const |
| bool | isCallIndirectVFGEdge () const |
| bool | isRetIndirectVFGEdge () const |
| bool | isIntraVFGEdge () const |
| bool | isThreadMHPIndirectVFGEdge () const |
| Public Member Functions inherited from SVF::GenericEdge< VFGNode > | |
| GenericEdge (VFGNode *s, VFGNode *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 bool | classof (const RetIndSVFGEdge *) |
| static bool | classof (const IndirectSVFGEdge *edge) |
| static bool | classof (const VFGEdge *edge) |
| static bool | classof (const GenericVFGEdgeTy *edge) |
| Static Public Member Functions inherited from SVF::IndirectSVFGEdge | |
| static bool | classof (const IndirectSVFGEdge *) |
| Methods for support type inquiry through isa, cast, and dyn_cast: | |
| static bool | classof (const VFGEdge *edge) |
| static bool | classof (const GenericVFGEdgeTy *edge) |
| Static Public Member Functions inherited from SVF::VFGEdge | |
| static GEdgeFlag | makeEdgeFlagWithInvokeID (GEdgeKind k, CallSiteID cs) |
| Compute the unique edgeFlag value from edge kind and CallSiteID. | |
Private Attributes | |
| CallSiteID | csId |
Additional Inherited Members | |
| Public Types inherited from SVF::IndirectSVFGEdge | |
| typedef Set< const MRVer * > | MRVerSet |
| Public Types inherited from SVF::VFGEdge | |
| enum | VFGEdgeK { IntraDirectVF , IntraIndirectVF , CallDirVF , RetDirVF , CallIndVF , RetIndVF , TheadMHPIndirectVF } |
| typedef VFGEdgeK | SVFGEdgeK |
| typedef GenericNode< VFGNode, VFGEdge >::GEdgeSetTy | VFGEdgeSetTy |
| typedef VFGEdgeSetTy | SVFGEdgeSetTy |
| Public Types inherited from SVF::GenericEdge< VFGNode > | |
| typedef VFGNode | 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). | |
| Static Protected Attributes inherited from SVF::GenericEdge< VFGNode > | |
| static constexpr unsigned char | EdgeKindMaskBits |
| We use the lower 8 bits to denote edge kind. | |
| static constexpr u64_t | EdgeKindMask |
SVFG return edge representing direct value-flows from a callee to its caller at a callsite
Definition at line 165 of file SVFGEdge.h.
|
inline |
Definition at line 171 of file SVFGEdge.h.
|
inlinestatic |
Definition at line 192 of file SVFGEdge.h.
|
inlinestatic |
Definition at line 184 of file SVFGEdge.h.
|
inlinestatic |
Definition at line 180 of file SVFGEdge.h.
|
inlinestatic |
Definition at line 188 of file SVFGEdge.h.
|
inline |
Definition at line 175 of file SVFGEdge.h.
|
virtual |
Reimplemented from SVF::IndirectSVFGEdge.
Definition at line 175 of file SVFG.cpp.
|
private |
Definition at line 169 of file SVFGEdge.h.