#include <AliasMapXAIF.hpp>


Public Member Functions | |
| AliasMapXAIF (ProcHandle p) | |
| ~AliasMapXAIF () | |
| OA_ptr< MemRefHandleIterator > | getMemRefIter () |
| get iterator over all memory references that information is available for | |
| int | getMapSetId (MemRefHandle ref) |
| int | findMapSet (MemRefHandle ref) |
| int | findMapSet (OA_ptr< std::set< LocTuple > > pLocTupleSet) |
| OA_ptr< IdIterator > | getIdIterator () |
| get iterator over ids for this alias map | |
| OA_ptr< LocTupleIterator > | getLocIterator (int setId) |
| get iterator over all locations in a particular set | |
| void | mapLocTupleSet (OA_ptr< std::set< LocTuple > > ltSet, int setId) |
| associate the given location set with the given mapSet | |
| void | mapMemRefToMapSet (MemRefHandle ref, int setId) |
| void | output (IRHandlesIRInterface &ir) |
| output for regression tests | |
| void | dump (std::ostream &os, OA_ptr< OA::IRHandlesIRInterface > ir) |
| incomplete output of info for debugging | |
Static Public Attributes | |
| static const int | SET_ID_NONE = -1 |
Private Attributes | |
| ProcHandle | mProcHandle |
| std::map< int, OA_ptr < std::set< LocTuple > > > | mIdToLocTupleSetMap |
| std::map< int, MemRefSet > | mIdToMemRefSetMap |
| std::map< MemRefHandle, int > | mMemRefToIdMap |
| std::map< MemRefHandle, std::set< OA_ptr< MemRefExpr > > > | mMemRefToMRESetMap |
Definition at line 157 of file AliasMapXAIF.hpp.
| OA::XAIF::AliasMapXAIF::AliasMapXAIF | ( | ProcHandle | p | ) |
Definition at line 20 of file AliasMapXAIF.cpp.
| OA::XAIF::AliasMapXAIF::~AliasMapXAIF | ( | ) | [inline] |
Definition at line 160 of file AliasMapXAIF.hpp.
| void OA::XAIF::AliasMapXAIF::dump | ( | std::ostream & | os, | |
| OA_ptr< OA::IRHandlesIRInterface > | ir | |||
| ) |
incomplete output of info for debugging
incomplete output of info for debugging, just lists map set Ids and associated set of locations and mapping of memrefs to the map set Ids
Definition at line 147 of file AliasMapXAIF.cpp.
References findMapSet(), OA::XAIF::LocRange::getEnd(), getIdIterator(), getLocIterator(), OA::XAIF::LocTuple::getLocRange(), getMemRefIter(), OA::XAIF::LocRange::getStart(), and OA::XAIF::LocTuple::isFull().

| int OA::XAIF::AliasMapXAIF::findMapSet | ( | MemRefHandle | ref | ) |
get unique id for the alias map set for this memory reference SET_ID_NONE indicates that this memory reference doesn't map to any of the existing AliasMap sets
Definition at line 49 of file AliasMapXAIF.cpp.
get id for an alias map set that contains an equivalent set of locations. SET_ID_NONE indicates that no equivalent location set was found in any AliasMap sets
Definition at line 60 of file AliasMapXAIF.cpp.
| OA_ptr< IdIterator > OA::XAIF::AliasMapXAIF::getIdIterator | ( | ) |
get iterator over ids for this alias map
Definition at line 73 of file AliasMapXAIF.cpp.
| OA_ptr< LocTupleIterator > OA::XAIF::AliasMapXAIF::getLocIterator | ( | int | setId | ) |
get iterator over all locations in a particular set
Definition at line 80 of file AliasMapXAIF.cpp.
References mIdToLocTupleSetMap.
| int OA::XAIF::AliasMapXAIF::getMapSetId | ( | MemRefHandle | ref | ) |
get unique id for the alias map set for this memory reference This method is NOT used for construction, and CANNOT return SET_ID_NONE
Definition at line 38 of file AliasMapXAIF.cpp.
| OA_ptr< MemRefHandleIterator > OA::XAIF::AliasMapXAIF::getMemRefIter | ( | ) |
get iterator over all memory references that information is available for
get iterator over all memory references that information is available for User must delete the iterator
Definition at line 23 of file AliasMapXAIF.cpp.
References mMemRefToIdMap.
associate the given location set with the given mapSet
Definition at line 87 of file AliasMapXAIF.cpp.
References mIdToLocTupleSetMap.
| void OA::XAIF::AliasMapXAIF::mapMemRefToMapSet | ( | MemRefHandle | ref, | |
| int | setId | |||
| ) |
associate a MemRefHandle with the given mapSet, means that the MemRefHandle can access all of the locations in the mapSet
associate a MemRefHandle with the given mapset, means that the MemRefHandle can access all of the locations in the mapset, if only one full location then is a must access
Definition at line 93 of file AliasMapXAIF.cpp.
| void OA::XAIF::AliasMapXAIF::output | ( | IRHandlesIRInterface & | ir | ) | [virtual] |
output for regression tests
Implements OA::Annotation.
Definition at line 105 of file AliasMapXAIF.cpp.
References findMapSet(), getIdIterator(), getLocIterator(), getMemRefIter(), OA::int2string(), mProcHandle, OA::XAIF::LocTuple::output(), and OA::Annotation::sOutBuild.

std::map<int,OA_ptr<std::set<LocTuple> > > OA::XAIF::AliasMapXAIF::mIdToLocTupleSetMap [private] |
Definition at line 219 of file AliasMapXAIF.hpp.
Referenced by getLocIterator(), and mapLocTupleSet().
std::map<int,MemRefSet> OA::XAIF::AliasMapXAIF::mIdToMemRefSetMap [private] |
Definition at line 222 of file AliasMapXAIF.hpp.
std::map<MemRefHandle,int> OA::XAIF::AliasMapXAIF::mMemRefToIdMap [private] |
Definition at line 225 of file AliasMapXAIF.hpp.
Referenced by getMemRefIter().
std::map<MemRefHandle,std::set<OA_ptr<MemRefExpr> > > OA::XAIF::AliasMapXAIF::mMemRefToMRESetMap [private] |
Definition at line 229 of file AliasMapXAIF.hpp.
Definition at line 216 of file AliasMapXAIF.hpp.
Referenced by output().
const int OA::XAIF::AliasMapXAIF::SET_ID_NONE = -1 [static] |
Definition at line 162 of file AliasMapXAIF.hpp.
1.7.1