00001 00015 #include "ManagerInterAliasMapBasic.hpp" 00016 00017 00018 namespace OA { 00019 namespace Alias { 00020 00021 static bool debug = false; 00022 00023 OA_ptr<Alias::InterAliasMap> 00024 ManagerInterAliasMapBasic::performAnalysis( OA_ptr<IRProcIterator> procIter) 00025 { 00026 // manager for intraprocedural AliasMap construction 00027 OA_ptr<ManagerAliasMapBasic> aliasmapman; 00028 aliasmapman = new ManagerAliasMapBasic(mIR); 00029 00030 // container for proc to alias results 00031 OA_ptr<InterAliasMap> retval; 00032 retval = new InterAliasMap(); 00033 00034 for (procIter->reset(); procIter->isValid(); (*procIter)++ ) { 00035 ProcHandle proc = procIter->current(); 00036 00037 // store off the aliasmap for this procedure 00038 retval->mapProcToAliasMap(proc, aliasmapman->performAnalysis(proc)); 00039 } 00040 00041 return retval; 00042 } 00043 00044 } // end of namespace Alias 00045 } // end of namespace OA
1.7.1