#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 22 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 149 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().

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 62 of file AliasMapXAIF.cpp.
References mapLocTupleSet(), mIdToLocTupleSetMap, and SET_ID_NONE.

| 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 51 of file AliasMapXAIF.cpp.
References mMemRefToIdMap, and SET_ID_NONE.
Referenced by dump(), mapMemRefToMapSet(), and output().
| OA_ptr< IdIterator > OA::XAIF::AliasMapXAIF::getIdIterator | ( | ) |
get iterator over ids for this alias map
Definition at line 75 of file AliasMapXAIF.cpp.
References mIdToLocTupleSetMap.
| OA_ptr< LocTupleIterator > OA::XAIF::AliasMapXAIF::getLocIterator | ( | int | setId | ) |
get iterator over all locations in a particular set
Definition at line 82 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 40 of file AliasMapXAIF.cpp.
References mMemRefToIdMap.
| 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 25 of file AliasMapXAIF.cpp.
References mMemRefToIdMap.
associate the given location set with the given mapSet
Definition at line 89 of file AliasMapXAIF.cpp.
References mIdToLocTupleSetMap.
Referenced by findMapSet().
| 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 95 of file AliasMapXAIF.cpp.
References findMapSet(), mIdToMemRefSetMap, mMemRefToIdMap, and SET_ID_NONE.

| void OA::XAIF::AliasMapXAIF::output | ( | IRHandlesIRInterface & | ir | ) | [virtual] |
output for regression tests
Implements OA::Annotation.
Definition at line 107 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 findMapSet(), getIdIterator(), getLocIterator(), and mapLocTupleSet().
std::map<int,MemRefSet> OA::XAIF::AliasMapXAIF::mIdToMemRefSetMap [private] |
Definition at line 222 of file AliasMapXAIF.hpp.
Referenced by mapMemRefToMapSet().
std::map<MemRefHandle,int> OA::XAIF::AliasMapXAIF::mMemRefToIdMap [private] |
Definition at line 225 of file AliasMapXAIF.hpp.
Referenced by findMapSet(), getMapSetId(), getMemRefIter(), and mapMemRefToMapSet().
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.
Referenced by findMapSet(), and mapMemRefToMapSet().
1.6.1