OA::IdxExprAccess Class Reference

#include <MemRefExpr.hpp>

Inheritance diagram for OA::IdxExprAccess:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

 IdxExprAccess (MemRefType mrType, OA_ptr< MemRefExpr > mre, MemRefHandle hExpr)
 IdxExprAccess (IdxExprAccess &mre)
 copy constructor
 ~IdxExprAccess ()
virtual void acceptVisitor (MemRefExprVisitor &pVisitor)
OA_ptr< MemRefExprclone ()
 return a ptr to a copy of self
bool isaIdxExprAccess ()
bool isSubClassOfSubSetRef ()
MemRefHandle getExpr ()
virtual std::string typeString ()
bool operator< (MemRefExpr &other)
 an ordering for locations, needed for use within STL containers
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

MemRefHandle mhExpr

Static Private Attributes

static const int sOrder = 450


Detailed Description

The IdxExprAccess class indicates an array reference with an expression being used for an index.

I'm assuming that all index expressions are affine.

Definition at line 710 of file MemRefExpr.hpp.


Constructor & Destructor Documentation

OA::IdxExprAccess::IdxExprAccess ( MemRefType  mrType,
OA_ptr< MemRefExpr mre,
MemRefHandle  hExpr 
) [inline]

Definition at line 713 of file MemRefExpr.hpp.

References mhExpr.

Referenced by clone().

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

copy constructor

Definition at line 721 of file MemRefExpr.hpp.

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

Definition at line 727 of file MemRefExpr.hpp.


Member Function Documentation

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

Reimplemented from OA::SubSetRef.

Definition at line 778 of file MemRefExpr.cpp.

References OA::MemRefExprVisitor::visitIdxExprAccess().

Here is the call graph for this function:

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

return a ptr to a copy of self

Reimplemented from OA::SubSetRef.

Definition at line 782 of file MemRefExpr.cpp.

References IdxExprAccess().

Here is the call graph for this function:

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

Reimplemented from OA::SubSetRef.

Definition at line 830 of file MemRefExpr.cpp.

References dump(), OA::RefOp::getMemRefExpr(), OA::IRHandle::hval(), and mhExpr.

Here is the call graph for this function:

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

Reimplemented from OA::SubSetRef.

Definition at line 839 of file MemRefExpr.cpp.

References dump(), OA::RefOp::getMemRefExpr(), OA::IRHandle::hval(), and mhExpr.

Here is the call graph for this function:

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

Reimplemented from OA::SubSetRef.

Definition at line 848 of file MemRefExpr.cpp.

Referenced by dump().

MemRefHandle OA::IdxExprAccess::getExpr (  )  [inline]

Definition at line 743 of file MemRefExpr.hpp.

References mhExpr.

Referenced by operator<(), operator==(), and NotationGenerator::outputMemRefExpr().

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

Reimplemented from OA::SubSetRef.

Definition at line 767 of file MemRefExpr.hpp.

References sOrder.

Referenced by operator<(), and operator==().

bool OA::IdxExprAccess::isaIdxExprAccess (  )  [inline, virtual]

Reimplemented from OA::MemRefExpr.

Definition at line 737 of file MemRefExpr.hpp.

bool OA::IdxExprAccess::isSubClassOfSubSetRef (  )  [inline, virtual]

Reimplemented from OA::SubSetRef.

Definition at line 738 of file MemRefExpr.hpp.

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

an ordering for locations, needed for use within STL containers

Need consistent ordering.

Reimplemented from OA::SubSetRef.

Definition at line 790 of file MemRefExpr.cpp.

References getExpr(), OA::RefOp::getMemRefExpr(), OA::MemRefExpr::getOrder(), and getOrder().

Here is the call graph for this function:

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

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

Reimplemented from OA::SubSetRef.

Definition at line 807 of file MemRefExpr.cpp.

References getExpr(), OA::RefOp::getMemRefExpr(), OA::MemRefExpr::getOrder(), and getOrder().

Here is the call graph for this function:

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

Reimplemented from OA::SubSetRef.

Definition at line 823 of file MemRefExpr.cpp.

References mhExpr, and OA::Annotation::sOutBuild.

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

Reimplemented from OA::SubSetRef.

Definition at line 744 of file MemRefExpr.hpp.


Member Data Documentation

Definition at line 771 of file MemRefExpr.hpp.

Referenced by dump(), getExpr(), IdxExprAccess(), and output().

const int OA::IdxExprAccess::sOrder = 450 [static, private]

Reimplemented from OA::SubSetRef.

Definition at line 770 of file MemRefExpr.hpp.

Referenced by getOrder().


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

Generated on Fri Jul 24 05:33:43 2009 for OpenADFortTk (extended to Open64) by  doxygen 1.5.7.1