Static Value-Flow Analysis
|
#include <SVFStatements.h>
Static Public Member Functions | |
static bool | classof (const SelectStmt *) |
Methods for support type inquiry through isa, cast, and dyn_cast: | |
static bool | classof (const SVFStmt *edge) |
static bool | classof (const MultiOpndStmt *edge) |
static bool | classof (const GenericPAGEdgeTy *edge) |
![]() | |
static bool | classof (const MultiOpndStmt *) |
Methods for support type inquiry through isa, cast, and dyn_cast: | |
static bool | classof (const SVFStmt *node) |
static bool | classof (const GenericPAGEdgeTy *node) |
![]() | |
static bool | classof (const SVFStmt *) |
ClassOf. | |
static bool | classof (const GenericPAGEdgeTy *edge) |
static GEdgeFlag | makeEdgeFlagWithAddionalOpnd (GEdgeKind k, const SVFVar *var) |
static GEdgeFlag | makeEdgeFlagWithCallInst (GEdgeKind k, const ICFGNode *cs) |
static GEdgeFlag | makeEdgeFlagWithStoreInst (GEdgeKind k, const ICFGNode *store) |
Private Member Functions | |
SelectStmt (const SelectStmt &) | |
place holder | |
void | operator= (const SelectStmt &) |
place holder | |
Private Attributes | |
const SVFVar * | condition |
Additional Inherited Members | |
![]() | |
typedef std::vector< SVFVar * > | OPVars |
![]() | |
enum | PEDGEK { Addr , Copy , Store , Load , Call , Ret , Gep , Phi , Select , Cmp , BinaryOp , UnaryOp , Branch , ThreadFork , ThreadJoin } |
typedef GenericNode< SVFVar, SVFStmt >::GEdgeSetTy | SVFStmtSetTy |
typedef Map< EdgeID, SVFStmtSetTy > | PAGEdgeToSetMapTy |
typedef PAGEdgeToSetMapTy | KindToSVFStmtMapTy |
typedef SVFStmtSetTy | PAGEdgeSetTy |
![]() | |
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) | |
![]() | |
static u32_t | totalEdgeNum |
Total edge number. | |
![]() | |
MultiOpndStmt (SVFVar *r, const OPVars &opnds, GEdgeFlag k) | |
Constructor, only used by subclasses but not external users. | |
![]() | |
SVFStmt (GEdgeFlag k) | |
Private constructor for reading SVFIR from file without side-effect. | |
![]() | |
OPVars | opVars |
![]() | |
static constexpr unsigned char | EdgeKindMaskBits = 8 |
We use the lower 8 bits to denote edge kind. | |
static constexpr u64_t | EdgeKindMask = (~0ULL) >> (64 - EdgeKindMaskBits) |
Select statement (e.g., p ? q: r which receives values from variables q and r based on condition p)
Definition at line 835 of file SVFStatements.h.
|
private |
place holder
constructor
Definition at line 358 of file SVFStatements.cpp.
|
inlinestatic |
Definition at line 859 of file SVFStatements.h.
|
inlinestatic |
Definition at line 855 of file SVFStatements.h.
|
inlinestatic |
Methods for support type inquiry through isa, cast, and dyn_cast:
Definition at line 847 of file SVFStatements.h.
Definition at line 851 of file SVFStatements.h.
Definition at line 869 of file SVFStatements.h.
Definition at line 877 of file SVFStatements.h.
Definition at line 873 of file SVFStatements.h.
|
private |
place holder
|
overridevirtual |
Reimplemented from SVF::SVFStmt.
Definition at line 116 of file SVFStatements.cpp.
Definition at line 842 of file SVFStatements.h.