Static Value-Flow Analysis
Loading...
Searching...
No Matches
SVF::LoadMU< Cond > Class Template Reference

#include <MSSAMuChi.h>

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

Public Member Functions

 LoadMU (const SVFBasicBlock *b, const LoadStmt *i, const MemRegion *m, Cond c=true)
 Constructor/Destructor for MU.
virtual ~LoadMU ()
const LoadStmt * getLoadStmt () const
 Return load instruction.
const SVFBasicBlock * getBasicBlock () const
 Return basic block.
virtual void dump ()
 Print MU.
Public Member Functions inherited from SVF::MSSAMU< Cond >
 MSSAMU (MUTYPE t, const MemRegion *m, Cond c)
 Constructor/Destructor for MU.
virtual ~MSSAMU ()
const MemRegion * getMR () const
 Return MR.
MUTYPE getType () const
 Return type.
void setVer (MRVer *v)
 Set Ver.
MRVer * getMRVer () const
 Get Ver.
Cond getCond () const
 Return condition.
bool operator< (const MSSAMU &rhs) const
 Avoid adding duplicated mus.

Static Public Member Functions

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

Private Attributes

const LoadStmt * inst
const SVFBasicBlock * bb

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 MemRegion * mr
MRVer * ver
Cond cond

Detailed Description

template<class Cond>
class SVF::LoadMU< Cond >

LoadMU is annotated at each load instruction, representing a memory object is read here

Definition at line 166 of file MSSAMuChi.h.

Constructor & Destructor Documentation

◆ LoadMU()

template<class Cond>
SVF::LoadMU< Cond >::LoadMU ( const SVFBasicBlock * b,
const LoadStmt * i,
const MemRegion * m,
Cond c = true )
inline

Constructor/Destructor for MU.

Definition at line 176 of file MSSAMuChi.h.

176 :
178 {
179 }
const LoadStmt * inst
Definition MSSAMuChi.h:170
const SVFBasicBlock * bb
Definition MSSAMuChi.h:171
MSSAMU(MUTYPE t, const MemRegion *m, Cond c)
Constructor/Destructor for MU.
Definition MSSAMuChi.h:113

◆ ~LoadMU()

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

Definition at line 180 of file MSSAMuChi.h.

181 {
182
183 }

Member Function Documentation

◆ classof() [1/2]

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

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

Definition at line 200 of file MSSAMuChi.h.

201 {
202 return true;
203 }

◆ classof() [2/2]

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

Definition at line 204 of file MSSAMuChi.h.

205 {
207 }
MUTYPE getType() const
Return type.
Definition MSSAMuChi.h:127

◆ dump()

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

Print MU.

Reimplemented from SVF::MSSAMU< Cond >.

Definition at line 211 of file MSSAMuChi.h.

212 {
213 SVFUtil::outs() << "LDMU(MR_" << this->getMR()->getMRID() << "V_" << this->getMRVer()->getSSAVersion() << ") \t" <<
214 this->getMR()->dumpStr() << "\n";
215 }
MRVERSION getSSAVersion() const
Return SSA version.
Definition MSSAMuChi.h:70
MRVer * getMRVer() const
Get Ver.
Definition MSSAMuChi.h:138
const MemRegion * getMR() const
Return MR.
Definition MSSAMuChi.h:122
MRID getMRID() const
Return memory region ID.
Definition MemRegion.h:82
std::string dumpStr() const
Dump string.
Definition MemRegion.h:97
std::ostream & outs()
Overwrite llvm::outs().
Definition SVFUtil.h:58

◆ getBasicBlock()

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

Return basic block.

Definition at line 193 of file MSSAMuChi.h.

194 {
195 return bb;
196 }

◆ getLoadStmt()

template<class Cond>
const LoadStmt * SVF::LoadMU< Cond >::getLoadStmt ( ) const
inline

Return load instruction.

Definition at line 187 of file MSSAMuChi.h.

188 {
189 return inst;
190 }

Member Data Documentation

◆ bb

template<class Cond>
const SVFBasicBlock* SVF::LoadMU< Cond >::bb
private

Definition at line 171 of file MSSAMuChi.h.

◆ inst

template<class Cond>
const LoadStmt* SVF::LoadMU< Cond >::inst
private

Definition at line 170 of file MSSAMuChi.h.


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