Static Value-Flow Analysis
|
#include <CDG.h>
Public Types | |
typedef std::pair< const SVFVar *, s32_t > | BranchCondition |
typedef GenericNode< CDGNode, CDGEdge >::GEdgeSetTy | CDGEdgeSetTy |
typedef CDGEdgeSetTy | 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 | |
CDGEdge (CDGNode *s, CDGNode *d) | |
Constructor. | |
~CDGEdge () | |
Destructor. | |
virtual const std::string | toString () const |
const Set< BranchCondition > & | getBranchConditions () const |
get/set branch condition | |
void | insertBranchCondition (const SVFVar *pNode, s32_t branchID) |
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 |
Private Attributes | |
Set< BranchCondition > | brConditions |
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) |
typedef std::pair<const SVFVar *, s32_t> SVF::CDGEdge::BranchCondition |
typedef GenericNode<CDGNode,CDGEdge>::GEdgeSetTy SVF::CDGEdge::CDGEdgeSetTy |
|
inline |
Definition at line 60 of file CDG.h.
|
private |