ROSE 0.11.145.147
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
VarsExprsProductLattice Class Referenceabstract

Description

Definition at line 197 of file liveDeadVarAnalysis.h.

Inheritance diagram for VarsExprsProductLattice:
Inheritance graph
[legend]
Collaboration diagram for VarsExprsProductLattice:
Collaboration graph
[legend]

Public Member Functions

 VarsExprsProductLattice (Lattice *perVarLattice, const std::map< varID, Lattice * > &constVarLattices, Lattice *allVarLattice, LiveDeadVarsAnalysis *ldva, const DataflowNode &n, const NodeState &state)
 
 VarsExprsProductLattice (const VarsExprsProductLattice &that)
 
LatticegetVarLattice (const varID &var)
 
std::set< varIDgetAllVars ()
 
void copy (Lattice *that)
 
void copy (const VarsExprsProductLattice *that)
 
bool meetUpdate (Lattice *that)
 
void remapVars (const std::map< varID, varID > &varNameMap, const Function &newFunc)
 *Lattice**‍/void remapVars(const std::map<varID, varID>& varNameMap, const Function& newFunc, bool (*f)(CFGNode));
 
void incorporateVars (Lattice *that)
 
Latticeproject (SgExpression *expr)
 
bool unProject (SgExpression *expr, Lattice *exprState)
 
bool addVar (const varID &var)
 
bool remVar (const varID &var)
 
bool addVar (const varID &var, Lattice *lat)
 
std::string str (std::string indent="")
 
- Public Member Functions inherited from ProductLattice
 ProductLattice (const std::vector< Lattice * > &lattices)
 
void init (const std::vector< Lattice * > &lattices)
 
void initialize ()
 
const std::vector< Lattice * > & getLattices ()
 
void copy_lattices (std::vector< Lattice * > &newLattices) const
 
virtual bool operator== (Lattice *that)
 
int getLevel ()
 
- Public Member Functions inherited from Lattice
virtual Latticecopy () const =0
 
virtual bool finiteLattice ()=0
 Check if this lattice is finite or not.
 
bool operator!= (Lattice *that)
 
bool operator== (Lattice &that)
 
bool operator!= (Lattice &that)
 

Protected Member Functions

 VarsExprsProductLattice (const DataflowNode &n, const NodeState &state, bool(*filter)(CFGNode cfgn))
 
virtual VarsExprsProductLatticeblankVEPL (const DataflowNode &n, const NodeState &state)=0
 
int getVarIndex (const varID &var)
 

Protected Attributes

LatticeperVarLattice
 
LatticeallVarLattice
 
std::map< varID, Lattice * > constVarLattices
 
std::map< varID, int > varLatticeIndex
 
LiveDeadVarsAnalysisldva
 
bool(* filter )(CFGNode cfgn)
 
DataflowNode n
 
const NodeStatestate
 
- Protected Attributes inherited from ProductLattice
std::vector< Lattice * > lattices
 

Additional Inherited Members

- Public Attributes inherited from ProductLattice
short level
 
- Static Public Attributes inherited from ProductLattice
static const int uninitialized =0
 
static const int initialized =1
 

Member Function Documentation

◆ copy()

void VarsExprsProductLattice::copy ( Lattice that)
virtual

Reimplemented from ProductLattice.

◆ meetUpdate()

bool VarsExprsProductLattice::meetUpdate ( Lattice that)
virtual

Reimplemented from ProductLattice.

◆ remapVars()

void VarsExprsProductLattice::remapVars ( const std::map< varID, varID > &  varNameMap,
const Function newFunc 
)
virtual

*Lattice**‍/void remapVars(const std::map<varID, varID>& varNameMap, const Function& newFunc, bool (*f)(CFGNode));

Reimplemented from Lattice.

◆ incorporateVars()

void VarsExprsProductLattice::incorporateVars ( Lattice that)
virtual

Reimplemented from Lattice.

◆ project()

Lattice * VarsExprsProductLattice::project ( SgExpression expr)
virtual

Reimplemented from Lattice.

◆ unProject()

bool VarsExprsProductLattice::unProject ( SgExpression expr,
Lattice exprState 
)
virtual

Reimplemented from Lattice.

◆ str()

std::string VarsExprsProductLattice::str ( std::string  indent = "")
virtual

Reimplemented from ProductLattice.

Member Data Documentation

◆ perVarLattice

Lattice* VarsExprsProductLattice::perVarLattice
protected

Definition at line 201 of file liveDeadVarAnalysis.h.

◆ allVarLattice

Lattice* VarsExprsProductLattice::allVarLattice
protected

Definition at line 204 of file liveDeadVarAnalysis.h.

◆ constVarLattices

std::map<varID, Lattice*> VarsExprsProductLattice::constVarLattices
protected

Definition at line 207 of file liveDeadVarAnalysis.h.

◆ varLatticeIndex

std::map<varID, int> VarsExprsProductLattice::varLatticeIndex
protected

Definition at line 211 of file liveDeadVarAnalysis.h.

◆ ldva

LiveDeadVarsAnalysis* VarsExprsProductLattice::ldva
protected

Definition at line 214 of file liveDeadVarAnalysis.h.

◆ filter

bool(* VarsExprsProductLattice::filter) (CFGNode cfgn)
protected

Definition at line 216 of file liveDeadVarAnalysis.h.

◆ n

DataflowNode VarsExprsProductLattice::n
protected

Definition at line 219 of file liveDeadVarAnalysis.h.

◆ state

const NodeState& VarsExprsProductLattice::state
protected

Definition at line 220 of file liveDeadVarAnalysis.h.


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