#include <MemRefExpr.hpp>


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< MemRefExpr > | clone () |
| 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 |
A named memory reference has a SymHandle base. Examples include references involving local and global variables.
Definition at line 185 of file MemRefExpr.hpp.
| OA::NamedRef::NamedRef | ( | MemRefType | mrType, | |
| SymHandle | sh | |||
| ) | [inline] |
Definition at line 188 of file MemRefExpr.hpp.
Referenced by clone().
| 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.
| void OA::NamedRef::acceptVisitor | ( | MemRefExprVisitor & | pVisitor | ) | [virtual] |
Implements OA::MemRefExpr.
Definition at line 82 of file MemRefExpr.cpp.
References OA::MemRefExprVisitor::visitNamedRef().

| OA_ptr< MemRefExpr > OA::NamedRef::clone | ( | ) | [virtual] |
return a ptr to a copy of self
Implements OA::MemRefExpr.
Definition at line 87 of file MemRefExpr.cpp.
References NamedRef().
Referenced by OA::Alias::RecordMREsVisitor::visitNamedRef(), and OA::equivalentMREsVisitor::visitNamedRef().

| void OA::NamedRef::dump | ( | std::ostream & | os | ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 142 of file MemRefExpr.cpp.
References dump(), OA::IRHandle::hval(), and mSymHandle.

| void OA::NamedRef::dump | ( | std::ostream & | os, | |
| IRHandlesIRInterface & | pIR | |||
| ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 150 of file MemRefExpr.cpp.
References dump(), OA::IRHandle::hval(), mSymHandle, and OA::IRHandlesIRInterface::toString().

| void OA::NamedRef::dump | ( | std::ostream & | os, | |
| OA_ptr< IRHandlesIRInterface > | pIR | |||
| ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 161 of file MemRefExpr.cpp.
Referenced by dump().
| virtual int OA::NamedRef::getOrder | ( | ) | [inline, virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 236 of file MemRefExpr.hpp.
References sOrder.
Referenced by operator<(), and operator==().
| SymHandle OA::NamedRef::getSymHandle | ( | ) | [inline] |
Definition at line 211 of file MemRefExpr.hpp.
References mSymHandle.
Referenced by operator<(), operator==(), NotationGenerator::outputMemRefExpr(), OA::Alias::SymHandleCollector::visitNamedRef(), OA::DataFlow::FormalFinderVisitor::visitNamedRef(), OA::Alias::VisibleBaseVisitor::visitNamedRef(), OA::Alias::InvisibleLocationVisitor::visitNamedRef(), OA::Alias::FixedLocationVisitor::visitNamedRef(), OA::DUG::CreateLocationVisitor::visitNamedRef(), and OA::Alias::CreateLocationVisitor::visitNamedRef().
| bool OA::NamedRef::isaNamed | ( | ) | [inline, virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 206 of file MemRefExpr.hpp.
| bool OA::NamedRef::operator< | ( | MemRefExpr & | other | ) |
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.
Definition at line 101 of file MemRefExpr.cpp.
References OA::MemRefExpr::getOrder(), getOrder(), and getSymHandle().

| bool OA::NamedRef::operator== | ( | MemRefExpr & | other | ) |
check if two memory references are equal at the level of accuracy provided by the MemRefExpr approximation
Definition at line 117 of file MemRefExpr.cpp.
References OA::MemRefExpr::getOrder(), getOrder(), and getSymHandle().

| void OA::NamedRef::output | ( | IRHandlesIRInterface & | ir | ) | [virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 132 of file MemRefExpr.cpp.
References mSymHandle, and OA::Annotation::sOutBuild.
| virtual std::string OA::NamedRef::typeString | ( | ) | [inline, virtual] |
Reimplemented from OA::MemRefExpr.
Definition at line 212 of file MemRefExpr.hpp.
SymHandle OA::NamedRef::mSymHandle [private] |
Definition at line 240 of file MemRefExpr.hpp.
Referenced by dump(), getSymHandle(), and output().
const int OA::NamedRef::sOrder = 100 [static, private] |
Reimplemented from OA::MemRefExpr.
Definition at line 239 of file MemRefExpr.hpp.
Referenced by getOrder().
1.6.1