AliasMap_output.cpp

Go to the documentation of this file.
00001 // /!\ ATTENTION:
00002 //
00003 //     THIS IS AN AUTOMATICALLY GENERATED FILE
00004 //     CREATED BY GenOutputTool.
00005 //     DO NOT EDIT THIS FILE DIRECTLY AS IT WILL
00006 //     BE OVERWRITTEN.
00007 
00008 #include "AliasMap.hpp"
00009 
00010 namespace OA {
00011   namespace Alias {
00012 
00013 void AliasMap::output(OA::IRHandlesIRInterface& ir)
00014 {
00015     sOutBuild->objStart("AliasMap");
00016 
00017     sOutBuild->fieldStart("mProcHandle");
00018     sOutBuild->outputIRHandle(mProcHandle, ir);
00019     sOutBuild->fieldEnd("mProcHandle");
00020     sOutBuild->field("mNumSets", OA::int2string(mNumSets));
00021     sOutBuild->field("mStartId", OA::int2string(mStartId));
00022     sOutBuild->mapStart("mIdToLocSetMap", "int", "OA::OA_ptr<LocSet> ");
00023     std::map<int, OA::OA_ptr<LocSet> >::iterator reg_mIdToLocSetMap_iterator;
00024     for(reg_mIdToLocSetMap_iterator = mIdToLocSetMap.begin();
00025         reg_mIdToLocSetMap_iterator != mIdToLocSetMap.end();
00026         reg_mIdToLocSetMap_iterator++)
00027     {
00028         const int &first = reg_mIdToLocSetMap_iterator->first;
00029         OA::OA_ptr<LocSet>  &second = reg_mIdToLocSetMap_iterator->second;
00030         if ( second.ptrEqual(0) ) continue;
00031         sOutBuild->mapEntryStart();
00032         sOutBuild->mapKey(OA::int2string(first));
00033         sOutBuild->mapValueStart();
00034 
00035         sOutBuild->listStart();
00036         LocSetIterator locIter(second);
00037         for (; locIter.isValid(); ++locIter) {
00038             OA_ptr<Location> loc = locIter.current();
00039             sOutBuild->listItemStart();
00040             loc->output(ir);
00041             sOutBuild->listItemEnd();
00042         }
00043         sOutBuild->listEnd();
00044 
00045         sOutBuild->mapValueEnd();
00046         sOutBuild->mapEntryEnd();
00047     }
00048     sOutBuild->mapEnd("mIdToLocSetMap");
00049 
00050     sOutBuild->mapStart("mIdToSetStatusMap", "int", "AliasResultType");
00051     std::map<int, AliasResultType>::iterator reg_mIdToSetStatusMap_iterator;
00052     for(reg_mIdToSetStatusMap_iterator = mIdToSetStatusMap.begin();
00053         reg_mIdToSetStatusMap_iterator != mIdToSetStatusMap.end();
00054         reg_mIdToSetStatusMap_iterator++)
00055     {
00056         const int &first = reg_mIdToSetStatusMap_iterator->first;
00057         AliasResultType &second = reg_mIdToSetStatusMap_iterator->second;
00058         sOutBuild->mapEntryStart();
00059         sOutBuild->mapKey(OA::int2string(first));
00060         sOutBuild->mapValueStart();
00061         sOutBuild->mapValue(OA::int2string(second));
00062         sOutBuild->mapValueEnd();
00063         sOutBuild->mapEntryEnd();
00064     }
00065     sOutBuild->mapEnd("mIdToSetStatusMap");
00066 
00067     sOutBuild->mapStart("mIdToMemRefSetMap", "int", "MemRefSet");
00068     std::map<int, MemRefSet>::iterator reg_mIdToMemRefSetMap_iterator;
00069     for(reg_mIdToMemRefSetMap_iterator = mIdToMemRefSetMap.begin();
00070         reg_mIdToMemRefSetMap_iterator != mIdToMemRefSetMap.end();
00071         reg_mIdToMemRefSetMap_iterator++)
00072     {
00073         const int &first = reg_mIdToMemRefSetMap_iterator->first;
00074         MemRefSet &second = reg_mIdToMemRefSetMap_iterator->second;
00075         sOutBuild->mapEntryStart();
00076         sOutBuild->mapKey(OA::int2string(first));
00077         sOutBuild->mapValueStart();
00078         sOutBuild->listStart();
00079         for (MemRefSet::iterator it = second.begin(); it != second.end(); ++it) {
00080             MemRefHandle memRefHandle = *it;
00081             sOutBuild->listItemStart();
00082             sOutBuild->outputIRHandle(memRefHandle, ir);
00083             sOutBuild->listItemEnd();
00084         }
00085         sOutBuild->listEnd();
00086         sOutBuild->mapValueEnd();
00087         sOutBuild->mapEntryEnd();
00088     }
00089     sOutBuild->mapEnd("mIdToMemRefSetMap");
00090 
00091     sOutBuild->mapStart("mIdToMRESetMap", "int", "MemRefExprSet");
00092     std::map<int, MemRefExprSet>::iterator reg_mIdToMRESetMap_iterator;
00093     for(reg_mIdToMRESetMap_iterator = mIdToMRESetMap.begin();
00094         reg_mIdToMRESetMap_iterator != mIdToMRESetMap.end();
00095         reg_mIdToMRESetMap_iterator++)
00096     {
00097         const int &first = reg_mIdToMRESetMap_iterator->first;
00098         MemRefExprSet &second = reg_mIdToMRESetMap_iterator->second;
00099         sOutBuild->mapEntryStart();
00100         sOutBuild->mapKey(OA::int2string(first));
00101         sOutBuild->mapValueStart();
00102         sOutBuild->listStart();
00103         for (MemRefExprSet::iterator it = second.begin(); it != second.end(); ++it) {
00104             OA_ptr<MemRefExpr> mre = *it;
00105             sOutBuild->listItemStart();
00106             mre->output(ir);
00107             sOutBuild->listItemEnd();
00108         }
00109         sOutBuild->listEnd();
00110         sOutBuild->mapValueEnd();
00111         sOutBuild->mapEntryEnd();
00112     }
00113     sOutBuild->mapEnd("mIdToMRESetMap");
00114 
00115 #if 0
00116     // This is redundant with mIdToMemRefSetMap
00117     sOutBuild->mapStart("mMemRefToIdMap", "MemRefHandle", "int");
00118     std::map<MemRefHandle, int>::iterator reg_mMemRefToIdMap_iterator;
00119     for(reg_mMemRefToIdMap_iterator = mMemRefToIdMap.begin();
00120         reg_mMemRefToIdMap_iterator != mMemRefToIdMap.end();
00121         reg_mMemRefToIdMap_iterator++)
00122     {
00123         const MemRefHandle &first = reg_mMemRefToIdMap_iterator->first;
00124         int &second = reg_mMemRefToIdMap_iterator->second;
00125         sOutBuild->mapEntryStart();
00126         sOutBuild->mapKeyStart();
00127         sOutBuild->outputIRHandle(first, ir);
00128         sOutBuild->mapKeyEnd();
00129         sOutBuild->mapValue(OA::int2string(second));
00130         sOutBuild->mapEntryEnd();
00131     }
00132     sOutBuild->mapEnd("mMemRefToIdMap");
00133 #endif
00134 
00135 #if 0
00136     // This is redundant with mIdToMRESetMap.
00137     sOutBuild->mapStart("mMREToIdMap", "OA::OA_ptr<MemRefExpr> ", "int");
00138     std::map<OA::OA_ptr<MemRefExpr> , int>::iterator reg_mMREToIdMap_iterator;
00139     for(reg_mMREToIdMap_iterator = mMREToIdMap.begin();
00140         reg_mMREToIdMap_iterator != mMREToIdMap.end();
00141         reg_mMREToIdMap_iterator++)
00142     {
00143         const OA::OA_ptr<MemRefExpr>  &first = reg_mMREToIdMap_iterator->first;
00144         int &second = reg_mMREToIdMap_iterator->second;
00145         sOutBuild->mapEntryStart();
00146         sOutBuild->mapKeyStart();
00147         first->output(ir);
00148         sOutBuild->mapKeyEnd();
00149         sOutBuild->mapValue(OA::int2string(second));
00150         sOutBuild->mapEntryEnd();
00151     }
00152     sOutBuild->mapEnd("mMREToIdMap");
00153 #endif
00154 
00155 #if 0
00156     // This is redundant with mIdToLocSetMap.
00157     sOutBuild->mapStart("mLocToIdMap", "OA::OA_ptr<Location> ", "int");
00158     std::map<OA::OA_ptr<Location> , int>::iterator reg_mLocToIdMap_iterator;
00159     for(reg_mLocToIdMap_iterator = mLocToIdMap.begin();
00160         reg_mLocToIdMap_iterator != mLocToIdMap.end();
00161         reg_mLocToIdMap_iterator++)
00162     {
00163         const OA::OA_ptr<Location>  &first = reg_mLocToIdMap_iterator->first;
00164         int &second = reg_mLocToIdMap_iterator->second;
00165         sOutBuild->mapEntryStart();
00166         sOutBuild->mapKeyStart();
00167         first->output(ir);
00168         sOutBuild->mapKeyEnd();
00169         sOutBuild->mapValue(OA::int2string(second));
00170         sOutBuild->mapEntryEnd();
00171     }
00172     sOutBuild->mapEnd("mLocToIdMap");
00173 #endif
00174     sOutBuild->objEnd("AliasMap");
00175 }
00176 
00177   } // end of Alias namespace
00178 } // end of OA namespace

Generated on Sat Oct 31 05:21:20 2009 for OpenAnalysis by  doxygen 1.6.1