Static Value-Flow Analysis
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
SVF::CallMU< Cond > Class Template Reference

#include <MSSAMuChi.h>

Inheritance diagram for SVF::CallMU< Cond >:
SVF::MSSAMU< Cond >

Public Member Functions

 CallMU (const CallICFGNode *cs, const MemRegion *m, Cond c=true)
 Constructor/Destructor for MU. More...
 
virtual ~CallMU ()
 
const CallICFGNodegetCallSite () const
 Return callsite. More...
 
const SVFBasicBlockgetBasicBlock () const
 Return basic block. More...
 
virtual void dump ()
 Print MU. More...
 
- Public Member Functions inherited from SVF::MSSAMU< Cond >
 MSSAMU (MUTYPE t, const MemRegion *m, Cond c)
 Constructor/Destructor for MU. More...
 
virtual ~MSSAMU ()
 
const MemRegiongetMR () const
 Return MR. More...
 
MUTYPE getType () const
 Return type. More...
 
void setVer (MRVer *v)
 Set Ver. More...
 
MRVergetMRVer () const
 Get Ver. More...
 
Cond getCond () const
 Return condition. More...
 
bool operator< (const MSSAMU &rhs) const
 Avoid adding duplicated mus. More...
 

Static Public Member Functions

static bool classof (const CallMU *)
 Methods for support type inquiry through isa, cast, and dyn_cast: More...
 
static bool classof (const MSSAMU< Cond > *mu)
 

Private Attributes

const CallICFGNodecallsite
 

Additional Inherited Members

- Public Types inherited from SVF::MSSAMU< Cond >
enum  MUTYPE { LoadMSSAMU , CallMSSAMU , RetMSSAMU }
 
- Protected Attributes inherited from SVF::MSSAMU< Cond >
MUTYPE type
 
const MemRegionmr
 
MRVerver
 
Cond cond
 

Detailed Description

template<class Cond>
class SVF::CallMU< Cond >

CallMU is annotated at callsite, representing a memory object is indirect read by callee

Definition at line 221 of file MSSAMuChi.h.

Constructor & Destructor Documentation

◆ CallMU()

template<class Cond >
SVF::CallMU< Cond >::CallMU ( const CallICFGNode cs,
const MemRegion m,
Cond  c = true 
)
inline

Constructor/Destructor for MU.

Definition at line 230 of file MSSAMuChi.h.

230  :
231  MSSAMU<Cond>(MSSAMU<Cond>::CallMSSAMU,m,c), callsite(cs)
232  {
233  }
const CallICFGNode * callsite
Definition: MSSAMuChi.h:225

◆ ~CallMU()

template<class Cond >
virtual SVF::CallMU< Cond >::~CallMU ( )
inlinevirtual

Definition at line 234 of file MSSAMuChi.h.

235  {
236 
237  }

Member Function Documentation

◆ classof() [1/2]

template<class Cond >
static bool SVF::CallMU< Cond >::classof ( const CallMU< Cond > *  )
inlinestatic

Methods for support type inquiry through isa, cast, and dyn_cast:

Definition at line 254 of file MSSAMuChi.h.

255  {
256  return true;
257  }

◆ classof() [2/2]

template<class Cond >
static bool SVF::CallMU< Cond >::classof ( const MSSAMU< Cond > *  mu)
inlinestatic

Definition at line 258 of file MSSAMuChi.h.

259  {
260  return mu->getType() == MSSAMU<Cond>::CallMSSAMU;
261  }

◆ dump()

template<class Cond >
virtual void SVF::CallMU< Cond >::dump ( )
inlinevirtual

Print MU.

Reimplemented from SVF::MSSAMU< Cond >.

Definition at line 265 of file MSSAMuChi.h.

266  {
267  SVFUtil::outs() << "CALMU(MR_" << this->getMR()->getMRID() << "V_" << this->getMRVer()->getSSAVersion() << ") \t" <<
268  this->getMR()->dumpStr() << "\n";
269  }
MRVERSION getSSAVersion() const
Return SSA version.
Definition: MSSAMuChi.h:69
const MemRegion * getMR() const
Return MR.
Definition: MSSAMuChi.h:121
MRVer * getMRVer() const
Get Ver.
Definition: MSSAMuChi.h:137
MRID getMRID() const
Return memory region ID.
Definition: MemRegion.h:78
std::string dumpStr() const
Dump string.
Definition: MemRegion.h:93
std::ostream & outs()
Overwrite llvm::outs()
Definition: SVFUtil.h:50

◆ getBasicBlock()

template<class Cond >
const SVFBasicBlock* SVF::CallMU< Cond >::getBasicBlock ( ) const
inline

Return basic block.

Definition at line 247 of file MSSAMuChi.h.

248  {
249  return callsite->getBB();
250  }
virtual const SVFBasicBlock * getBB() const
Return the basic block of this ICFGNode.
Definition: ICFGNode.h:82

◆ getCallSite()

template<class Cond >
const CallICFGNode* SVF::CallMU< Cond >::getCallSite ( ) const
inline

Return callsite.

Definition at line 241 of file MSSAMuChi.h.

242  {
243  return callsite;
244  }

Member Data Documentation

◆ callsite

template<class Cond >
const CallICFGNode* SVF::CallMU< Cond >::callsite
private

Definition at line 225 of file MSSAMuChi.h.


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