Static Value-Flow Analysis
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Friends | List of all members
SVF::SVFGlobalValue Class Reference

#include <SVFValue.h>

Inheritance diagram for SVF::SVFGlobalValue:
SVF::SVFConstant SVF::SVFValue

Public Member Functions

 SVFGlobalValue (const SVFType *ty)
 
 SVFGlobalValue (std::string &&name, const SVFType *ty)
 
 SVFGlobalValue ()=delete
 
const SVFValuegetDefGlobalForMultipleModule () const
 
- Public Member Functions inherited from SVF::SVFConstant
 SVFConstant (const SVFType *ty, SVFValKind k=SVFConst)
 
 SVFConstant ()=delete
 
- Public Member Functions inherited from SVF::SVFValue
 SVFValue ()=delete
 
virtual ~SVFValue ()=default
 
GNodeK getKind () const
 Get the type of this SVFValue.
 
const std::string & getName () const
 
void setName (const std::string &n)
 
void setName (std::string &&n)
 
virtual const SVFTypegetType () const
 
bool isConstDataOrAggData () const
 
bool ptrInUncalledFunction () const
 
bool isblackHole () const
 
bool isNullPtr () const
 
virtual void setSourceLoc (const std::string &sourceCodeInfo)
 
virtual const std::string getSourceLoc () const
 
std::string toString () const
 Needs to be implemented by a SVF front end.
 

Static Public Member Functions

static bool classof (const SVFValue *node)
 
static bool classof (const SVFConstant *node)
 
- Static Public Member Functions inherited from SVF::SVFConstant
static bool classof (const SVFValue *node)
 

Protected Member Functions

void setDefGlobalForMultipleModule (const SVFValue *defg)
 the definition of a function across multiple modules
 
- Protected Member Functions inherited from SVF::SVFValue
 SVFValue (const SVFType *ty, SVFValKind k)
 Constructor without name.
 
void setConstDataOrAggData ()
 
void setPtrInUncalledFunction ()
 

Private Attributes

const SVFValuerealDefGlobal
 

Friends

class SVFIRWriter
 
class SVFIRReader
 
class LLVMModuleSet
 

Additional Inherited Members

- Public Types inherited from SVF::SVFValue
enum  SVFValKind {
  SVFVal , SVFFunc , SVFBB , SVFInst ,
  SVFCall , SVFVCall , SVFGlob , SVFArg ,
  SVFConst , SVFConstData , SVFConstInt , SVFConstFP ,
  SVFNullPtr , SVFBlackHole , SVFMetaAsValue , SVFOther
}
 
typedef s64_t GNodeK
 
- Protected Attributes inherited from SVF::SVFValue
const SVFTypetype
 Type of this SVFValue.
 
std::string name
 Short name of value for printing & debugging.
 
std::string sourceLoc
 

Detailed Description

Definition at line 772 of file SVFValue.h.

Constructor & Destructor Documentation

◆ SVFGlobalValue() [1/3]

SVF::SVFGlobalValue::SVFGlobalValue ( const SVFType ty)
inline

Definition at line 788 of file SVFValue.h.

789 {
790 }
SVFConstant()=delete
const SVFValue * realDefGlobal
Definition SVFValue.h:779
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:74

◆ SVFGlobalValue() [2/3]

SVF::SVFGlobalValue::SVFGlobalValue ( std::string &&  name,
const SVFType ty 
)
inline

Definition at line 791 of file SVFValue.h.

792 {
793 setName(std::move(name));
794 }
void setName(const std::string &n)
Definition SVFValue.h:247
std::string name
Short name of value for printing & debugging.
Definition SVFValue.h:213

◆ SVFGlobalValue() [3/3]

SVF::SVFGlobalValue::SVFGlobalValue ( )
delete

Member Function Documentation

◆ classof() [1/2]

static bool SVF::SVFGlobalValue::classof ( const SVFConstant node)
inlinestatic

Definition at line 807 of file SVFValue.h.

808 {
809 return node->getKind() == SVFGlob;
810 }

◆ classof() [2/2]

static bool SVF::SVFGlobalValue::classof ( const SVFValue node)
inlinestatic

Definition at line 803 of file SVFValue.h.

804 {
805 return node->getKind() == SVFGlob;
806 }

◆ getDefGlobalForMultipleModule()

const SVFValue * SVF::SVFGlobalValue::getDefGlobalForMultipleModule ( ) const
inline

Definition at line 797 of file SVFValue.h.

798 {
799 if(realDefGlobal==nullptr)
800 return this;
801 return realDefGlobal;
802 }

◆ setDefGlobalForMultipleModule()

void SVF::SVFGlobalValue::setDefGlobalForMultipleModule ( const SVFValue defg)
inlineprotected

the definition of a function across multiple modules

Definition at line 782 of file SVFValue.h.

783 {
785 }

Friends And Related Symbol Documentation

◆ LLVMModuleSet

Definition at line 776 of file SVFValue.h.

◆ SVFIRReader

Definition at line 775 of file SVFValue.h.

◆ SVFIRWriter

Definition at line 774 of file SVFValue.h.

Member Data Documentation

◆ realDefGlobal

const SVFValue* SVF::SVFGlobalValue::realDefGlobal
private

Definition at line 779 of file SVFValue.h.


The documentation for this class was generated from the following file: