diff --git a/utils/TableGen/RegisterInfoEmitter.cpp b/utils/TableGen/RegisterInfoEmitter.cpp index 7517c5eee55..b4b52f3f765 100644 --- a/utils/TableGen/RegisterInfoEmitter.cpp +++ b/utils/TableGen/RegisterInfoEmitter.cpp @@ -114,7 +114,8 @@ bool isSubRegisterClass(const CodeGenRegisterClass &RC, } static void addSuperReg(Record *R, Record *S, - std::map > &SubRegs, + std::map, + LessRecord> &SubRegs, std::map > &SuperRegs, std::map > &Aliases) { if (R == S) { @@ -135,7 +136,8 @@ static void addSuperReg(Record *R, Record *S, } static void addSubSuperReg(Record *R, Record *S, - std::map > &SubRegs, + std::map, + LessRecord> &SubRegs, std::map > &SuperRegs, std::map > &Aliases) { if (R == S) { @@ -158,10 +160,10 @@ static void addSubSuperReg(Record *R, Record *S, class RegisterSorter { private: - std::map > &RegisterSubRegs; + std::map, LessRecord> &RegisterSubRegs; public: - RegisterSorter(std::map > &RS) + RegisterSorter(std::map, LessRecord> &RS) : RegisterSubRegs(RS) {}; bool operator()(Record *RegA, Record *RegB) { @@ -418,7 +420,7 @@ void RegisterInfoEmitter::run(std::ostream &OS) { OS << " };\n"; // Emit register sub-registers / super-registers, aliases... - std::map > RegisterSubRegs; + std::map, LessRecord> RegisterSubRegs; std::map > RegisterSuperRegs; std::map > RegisterAliases; std::map > > SubRegVectors; @@ -563,7 +565,7 @@ void RegisterInfoEmitter::run(std::ostream &OS) { OS << " const unsigned Empty_SubRegsSet[] = { 0 };\n"; // Loop over all of the registers which have sub-registers, emitting the // sub-registers list to memory. - for (std::map >::iterator + for (std::map, LessRecord>::iterator I = RegisterSubRegs.begin(), E = RegisterSubRegs.end(); I != E; ++I) { OS << " const unsigned " << I->first->getName() << "_SubRegsSet[] = { "; std::vector SubRegsVector;