#include <MemRefExpr.hpp>


Public Member Functions | |
| SubSetRef (MemRefType mrType, OA_ptr< MemRefExpr > mre) | |
| SubSetRef (SubSetRef &mre) | |
| copy constructor | |
| virtual | ~SubSetRef () |
| void | acceptVisitor (MemRefExprVisitor &pVisitor) |
| OA_ptr< MemRefExpr > | clone () |
| return a ptr to a copy of self | |
| virtual bool | isaSubSetRef () |
| virtual bool | isSubClassOfSubSetRef () |
| virtual bool | operator< (MemRefExpr &other) |
| an ordering for locations, needed for use within STL containers | |
| virtual bool | operator== (MemRefExpr &other) |
| OA_ptr< MemRefExpr > | composeWith (OA_ptr< MemRefExpr > mre) |
| Will make this Refop wrap the given mre and return the result. | |
| void | output (IRHandlesIRInterface &ir) |
| virtual std::string | typeString () |
| 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 () |
Static Private Attributes | |
| static const int | sOrder = 600 |
The SubSetRef implements a decorator pattern for memory references. If we decorate a memory reference with a subclass of SubSetRef it represents some operation such as a field access or array access occuring. Many sub set reference operations are possible abstractions are possible.
Definition at line 583 of file MemRefExpr.hpp.
| OA::SubSetRef::SubSetRef | ( | MemRefType | mrType, | |
| OA_ptr< MemRefExpr > | mre | |||
| ) | [inline] |
Definition at line 586 of file MemRefExpr.hpp.
| OA::SubSetRef::SubSetRef | ( | SubSetRef & | mre | ) | [inline] |
copy constructor
Definition at line 590 of file MemRefExpr.hpp.
| virtual OA::SubSetRef::~SubSetRef | ( | ) | [inline, virtual] |
Definition at line 592 of file MemRefExpr.hpp.
| void OA::SubSetRef::acceptVisitor | ( | MemRefExprVisitor & | pVisitor | ) | [virtual] |
Implements OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 596 of file MemRefExpr.cpp.
| OA_ptr< MemRefExpr > OA::SubSetRef::clone | ( | ) | [virtual] |
return a ptr to a copy of self
Implements OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 589 of file MemRefExpr.cpp.
| OA_ptr< MemRefExpr > OA::SubSetRef::composeWith | ( | OA_ptr< MemRefExpr > | mre | ) | [virtual] |
Will make this Refop wrap the given mre and return the result.
Implements OA::RefOp.
Definition at line 603 of file MemRefExpr.cpp.
| void OA::SubSetRef::dump | ( | std::ostream & | os, | |
| OA_ptr< IRHandlesIRInterface > | pIR | |||
| ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 669 of file MemRefExpr.cpp.
| void OA::SubSetRef::dump | ( | std::ostream & | os, | |
| IRHandlesIRInterface & | pIR | |||
| ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 660 of file MemRefExpr.cpp.
| void OA::SubSetRef::dump | ( | std::ostream & | os | ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 651 of file MemRefExpr.cpp.
| virtual int OA::SubSetRef::getOrder | ( | ) | [inline, virtual] |
Reimplemented from OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 636 of file MemRefExpr.hpp.
References sOrder.
| virtual bool OA::SubSetRef::isaSubSetRef | ( | ) | [inline, virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 602 of file MemRefExpr.hpp.
| virtual bool OA::SubSetRef::isSubClassOfSubSetRef | ( | ) | [inline, virtual] |
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 603 of file MemRefExpr.hpp.
| bool OA::SubSetRef::operator< | ( | MemRefExpr & | other | ) | [virtual] |
an ordering for locations, needed for use within STL containers
Need consistent ordering.
Reimplemented from OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 623 of file MemRefExpr.cpp.
| bool OA::SubSetRef::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.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 637 of file MemRefExpr.cpp.
| void OA::SubSetRef::output | ( | IRHandlesIRInterface & | ir | ) | [virtual] |
Reimplemented from OA::RefOp.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 614 of file MemRefExpr.cpp.
| virtual std::string OA::SubSetRef::typeString | ( | ) | [inline, virtual] |
Reimplemented from OA::RefOp.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 626 of file MemRefExpr.hpp.
const int OA::SubSetRef::sOrder = 600 [static, private] |
Reimplemented from OA::MemRefExpr.
Reimplemented in OA::IdxAccess, OA::IdxExprAccess, and OA::FieldAccess.
Definition at line 639 of file MemRefExpr.hpp.
Referenced by getOrder().
1.7.1