Static Value-Flow Analysis
|
#include <SVFValue.h>
Public Types | |
enum | GNodeK { IntraBlock , GlobalBlock , FunEntryBlock , FunExitBlock , FunCallBlock , FunRetBlock , ValNode , ArgValNode , FunValNode , GepValNode , RetValNode , VarargValNode , GlobalValNode , ConstAggValNode , ConstDataValNode , BlackHoleValNode , ConstFPValNode , ConstIntValNode , ConstNullptrValNode , DummyValNode , ObjNode , GepObjNode , BaseObjNode , FunObjNode , HeapObjNode , StackObjNode , GlobalObjNode , ConstAggObjNode , ConstDataObjNode , ConstFPObjNode , ConstIntObjNode , ConstNullptrObjNode , DummyObjNode , Cmp , BinaryOp , UnaryOp , Branch , DummyVProp , NPtr , FRet , ARet , AParm , FParm , Addr , Copy , Gep , Store , Load , TPhi , TIntraPhi , TInterPhi , FPIN , FPOUT , APIN , APOUT , MPhi , MIntraPhi , MInterPhi , CallNodeKd , CDNodeKd , CFLNodeKd , CHNodeKd , ConstraintNodeKd , TCTNodeKd , DCHNodeKd , BasicBlockKd , OtherKd } |
Public Member Functions | |
SVFValue (NodeID i, GNodeK k, const SVFType *ty=nullptr) | |
NodeID | getId () const |
Get ID. | |
GNodeK | getNodeKind () const |
Get node kind. | |
virtual const SVFType * | getType () const |
virtual void | setName (const std::string &nameInfo) |
virtual void | setName (std::string &&nameInfo) |
virtual const std::string & | getName () const |
virtual void | setSourceLoc (const std::string &sourceCodeInfo) |
virtual const std::string | getSourceLoc () const |
const std::string | valueOnlyToString () const |
Static Protected Member Functions | |
static bool | isICFGNodeKinds (GNodeK n) |
Helper functions to check node kinds. | |
static bool | isInterICFGNodeKind (GNodeK n) |
static bool | isSVFVarKind (GNodeK n) |
static bool | isValVarKinds (GNodeK n) |
static bool | isConstantDataValVar (GNodeK n) |
static bool | isObjVarKinds (GNodeK n) |
static bool | isBaseObjVarKinds (GNodeK n) |
static bool | isConstantDataObjVarKinds (GNodeK n) |
static bool | isVFGNodeKinds (GNodeK n) |
static bool | isArgumentVFGNodeKinds (GNodeK n) |
static bool | isStmtVFGNodeKinds (GNodeK n) |
static bool | isPHIVFGNodeKinds (GNodeK n) |
static bool | isMRSVFGNodeKinds (GNodeK n) |
static bool | isMSSAPHISVFGNodeKinds (GNodeK n) |
Protected Attributes | |
NodeID | id |
Node ID. | |
GNodeK | nodeKind |
Node kind. | |
const SVFType * | type |
SVF type. | |
std::string | name |
std::string | sourceLoc |
Source code information of this value. | |
Definition at line 43 of file SVFValue.h.
Definition at line 48 of file SVFValue.h.
Definition at line 154 of file SVFValue.h.
|
inline |
Reimplemented in SVF::DCHNode, SVF::CallGraphNode, and SVF::CHNode.
Definition at line 186 of file SVFValue.h.
|
inline |
Reimplemented in SVF::GlobalICFGNode, SVF::FunEntryICFGNode, SVF::FunExitICFGNode, SVF::CallICFGNode, and SVF::RetICFGNode.
Definition at line 196 of file SVFValue.h.
Reimplemented in SVF::GepValVar, SVF::BaseObjVar, and SVF::GepObjVar.
Definition at line 171 of file SVFValue.h.
Definition at line 288 of file SVFValue.h.
Definition at line 264 of file SVFValue.h.
Definition at line 272 of file SVFValue.h.
Definition at line 248 of file SVFValue.h.
Helper functions to check node kinds.
Definition at line 214 of file SVFValue.h.
Definition at line 222 of file SVFValue.h.
Definition at line 312 of file SVFValue.h.
Definition at line 320 of file SVFValue.h.
Definition at line 256 of file SVFValue.h.
Definition at line 304 of file SVFValue.h.
Definition at line 296 of file SVFValue.h.
Definition at line 230 of file SVFValue.h.
Definition at line 239 of file SVFValue.h.
Definition at line 280 of file SVFValue.h.
Definition at line 176 of file SVFValue.h.
|
inlinevirtual |
Definition at line 181 of file SVFValue.h.
Definition at line 191 of file SVFValue.h.
const std::string SVF::SVFValue::valueOnlyToString | ( | ) | const |
Definition at line 735 of file LLVMUtil.cpp.
|
protected |
Node ID.
Definition at line 205 of file SVFValue.h.
|
protected |
Definition at line 209 of file SVFValue.h.
|
protected |
Node kind.
Definition at line 206 of file SVFValue.h.
|
protected |
Source code information of this value.
Definition at line 210 of file SVFValue.h.
SVF type.
Definition at line 207 of file SVFValue.h.