ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SeqStructLattice Class Reference

#include <sequenceStructAnalysis.h>

Inheritance diagram for SeqStructLattice:
Collaboration diagram for SeqStructLattice:

Public Types

enum  seqLevel {
  uninitialized =0,
  bottom =1,
  startKnown =2,
  seqKnown =3,
  top =4
}
 

Public Member Functions

 SeqStructLattice (ConstrGraph *cg, const DataflowNode &n, string indent="")
 
 SeqStructLattice (ConstrGraph *cg, const DataflowNode &n, const varID &vInit, int startOffset, string indent="")
 
 SeqStructLattice (ConstrGraph *cg, const DataflowNode &n, int initVal, string indent="")
 
 SeqStructLattice (ConstrGraph *cg, const DataflowNode &n, const varID &initV, const varID &finV, int s, string indent="")
 
 SeqStructLattice (ConstrGraph *cg, const DataflowNode &n, int initV, int finV, int s, string indent="")
 
 SeqStructLattice (const SeqStructLattice &that, string indent="")
 
void initialize ()
 
Latticecopy () const
 
void copy (Lattice *that)
 
void remapVars (const map< varID, varID > &varNameMap, const Function &newFunc)
 
void incorporateVars (Lattice *that_arg)
 
Latticeproject (SgExpression *expr)
 
bool unProject (SgExpression *expr, Lattice *exprState)
 
bool meetUpdate (Lattice *that_arg)
 
bool setToBottom ()
 
bool setToTop ()
 
bool setToStartKnown (varID vInit, int initOffset)
 
bool setToStartKnown (int initVal)
 
bool setToSeqKnown (varID vFin, int finOffset, int stride)
 
seqLevel getLevel () const
 
bool operator== (Lattice *that)
 
string str (string indent="")
 
- Public Member Functions inherited from FiniteLattice
bool finiteLattice ()
 Check if this lattice is finite or not. More...
 
- Public Member Functions inherited from Lattice
virtual void remapVars (const std::map< varID, varID > &varNameMap, const Function &newFunc)
 
bool operator!= (Lattice *that)
 
bool operator== (Lattice &that)
 
bool operator!= (Lattice &that)
 
- Public Member Functions inherited from printable
virtual ~printable ()
 
virtual std::string str (std::string indent="")=0
 

Public Attributes

varID vInit
 
varID vFin
 
int s
 

Protected Member Functions

void init (string indent="")
 
bool copyFrom (const SeqStructLattice &that, string indent="")
 

Private Attributes

seqLevel level
 
ConstrGraphcg
 
DominatorAnalysisdom
 
const DataflowNoden
 

Detailed Description

Definition at line 23 of file sequenceStructAnalysis.h.

Member Enumeration Documentation

Enumerator
uninitialized 
bottom 
startKnown 
seqKnown 
top 

Definition at line 34 of file sequenceStructAnalysis.h.

Constructor & Destructor Documentation

SeqStructLattice::SeqStructLattice ( ConstrGraph cg,
const DataflowNode n,
string  indent = "" 
)
SeqStructLattice::SeqStructLattice ( ConstrGraph cg,
const DataflowNode n,
const varID vInit,
int  startOffset,
string  indent = "" 
)
SeqStructLattice::SeqStructLattice ( ConstrGraph cg,
const DataflowNode n,
int  initVal,
string  indent = "" 
)
SeqStructLattice::SeqStructLattice ( ConstrGraph cg,
const DataflowNode n,
const varID initV,
const varID finV,
int  s,
string  indent = "" 
)
SeqStructLattice::SeqStructLattice ( ConstrGraph cg,
const DataflowNode n,
int  initV,
int  finV,
int  s,
string  indent = "" 
)
SeqStructLattice::SeqStructLattice ( const SeqStructLattice that,
string  indent = "" 
)

Member Function Documentation

void SeqStructLattice::init ( string  indent = "")
protected
bool SeqStructLattice::copyFrom ( const SeqStructLattice that,
string  indent = "" 
)
protected
void SeqStructLattice::initialize ( )
virtual

Implements Lattice.

Lattice* SeqStructLattice::copy ( ) const
virtual

Implements Lattice.

void SeqStructLattice::copy ( Lattice that)
virtual

Implements Lattice.

void SeqStructLattice::remapVars ( const map< varID, varID > &  varNameMap,
const Function newFunc 
)
void SeqStructLattice::incorporateVars ( Lattice that_arg)
virtual

Reimplemented from Lattice.

Lattice* SeqStructLattice::project ( SgExpression expr)
virtual

Reimplemented from Lattice.

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

Reimplemented from Lattice.

bool SeqStructLattice::meetUpdate ( Lattice that_arg)
virtual

Implements Lattice.

bool SeqStructLattice::setToBottom ( )
bool SeqStructLattice::setToTop ( )
bool SeqStructLattice::setToStartKnown ( varID  vInit,
int  initOffset 
)
bool SeqStructLattice::setToStartKnown ( int  initVal)
bool SeqStructLattice::setToSeqKnown ( varID  vFin,
int  finOffset,
int  stride 
)
seqLevel SeqStructLattice::getLevel ( ) const
bool SeqStructLattice::operator== ( Lattice that)
virtual

Implements Lattice.

string SeqStructLattice::str ( string  indent = "")

Member Data Documentation

varID SeqStructLattice::vInit

Definition at line 27 of file sequenceStructAnalysis.h.

varID SeqStructLattice::vFin

Definition at line 28 of file sequenceStructAnalysis.h.

int SeqStructLattice::s

Definition at line 30 of file sequenceStructAnalysis.h.

seqLevel SeqStructLattice::level
private

Definition at line 49 of file sequenceStructAnalysis.h.

ConstrGraph* SeqStructLattice::cg
private

Definition at line 53 of file sequenceStructAnalysis.h.

DominatorAnalysis* SeqStructLattice::dom
private

Definition at line 56 of file sequenceStructAnalysis.h.

const DataflowNode& SeqStructLattice::n
private

Definition at line 59 of file sequenceStructAnalysis.h.


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