Public Member Functions | Private Attributes | Static Private Attributes

OA::NamedRef Class Reference

#include <MemRefExpr.hpp>

Inheritance diagram for OA::NamedRef:
Inheritance graph
[legend]
Collaboration diagram for OA::NamedRef:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 NamedRef (MemRefType mrType, SymHandle sh)
 NamedRef (NamedRef &mre)
 copy constructor
 NamedRef (MemRefExpr &mre, SymHandle sh)
 ~NamedRef ()
void acceptVisitor (MemRefExprVisitor &pVisitor)
OA_ptr< MemRefExprclone ()
 return a ptr to a copy of self
bool isaNamed ()
SymHandle getSymHandle ()
virtual std::string typeString ()
bool operator< (MemRefExpr &other)
bool operator== (MemRefExpr &other)
void output (IRHandlesIRInterface &ir)
virtual void dump (std::ostream &os, OA_ptr< IRHandlesIRInterface > pIR)
virtual void dump (std::ostream &os, IRHandlesIRInterface &pIR)
virtual void dump (std::ostream &os)
virtual int getOrder ()

Private Attributes

SymHandle mSymHandle

Static Private Attributes

static const int sOrder = 100

Detailed Description

A named memory reference has a SymHandle base. Examples include references involving local and global variables.

Definition at line 185 of file MemRefExpr.hpp.


Constructor & Destructor Documentation

OA::NamedRef::NamedRef ( MemRefType  mrType,
SymHandle  sh 
) [inline]

Definition at line 188 of file MemRefExpr.hpp.

OA::NamedRef::NamedRef ( NamedRef mre  )  [inline]

copy constructor

Definition at line 192 of file MemRefExpr.hpp.

OA::NamedRef::NamedRef ( MemRefExpr mre,
SymHandle  sh 
) [inline]

Definition at line 194 of file MemRefExpr.hpp.

OA::NamedRef::~NamedRef (  )  [inline]

Definition at line 196 of file MemRefExpr.hpp.


Member Function Documentation

void OA::NamedRef::acceptVisitor ( MemRefExprVisitor pVisitor  )  [virtual]

Implements OA::MemRefExpr.

Definition at line 78 of file MemRefExpr.cpp.

OA_ptr< MemRefExpr > OA::NamedRef::clone (  )  [virtual]

return a ptr to a copy of self

Implements OA::MemRefExpr.

Definition at line 83 of file MemRefExpr.cpp.

References OA::MemRefExprVisitor::visitNamedRef().

Here is the call graph for this function:

void OA::NamedRef::dump ( std::ostream &  os  )  [virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 138 of file MemRefExpr.cpp.

void OA::NamedRef::dump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface pIR 
) [virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 157 of file MemRefExpr.cpp.

void OA::NamedRef::dump ( std::ostream &  os,
IRHandlesIRInterface pIR 
) [virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 146 of file MemRefExpr.cpp.

virtual int OA::NamedRef::getOrder (  )  [inline, virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 236 of file MemRefExpr.hpp.

References sOrder.

SymHandle OA::NamedRef::getSymHandle (  )  [inline]
bool OA::NamedRef::isaNamed (  )  [inline, virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 206 of file MemRefExpr.hpp.

bool OA::NamedRef::operator< ( MemRefExpr other  )  [virtual]

References are ordered first between MemRefExpr subclasses based on their sOrder value. Then there is a consistent ordering within each subclass.

For NamedRef's ordering is done by SymHandle.

Reimplemented from OA::MemRefExpr.

Definition at line 97 of file MemRefExpr.cpp.

bool OA::NamedRef::operator== ( MemRefExpr other  )  [virtual]

check if two memory references are equal at the level of accuracy provided by the MemRefExpr approximation

Reimplemented from OA::MemRefExpr.

Definition at line 113 of file MemRefExpr.cpp.

void OA::NamedRef::output ( IRHandlesIRInterface ir  )  [virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 128 of file MemRefExpr.cpp.

virtual std::string OA::NamedRef::typeString (  )  [inline, virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 212 of file MemRefExpr.hpp.


Member Data Documentation

Definition at line 240 of file MemRefExpr.hpp.

Referenced by getSymHandle().

const int OA::NamedRef::sOrder = 100 [static, private]

Reimplemented from OA::MemRefExpr.

Definition at line 239 of file MemRefExpr.hpp.

Referenced by getOrder().


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