@@ -234,9 +234,9 @@ void RegisterInfoEmitter::EmitRegUnitPressure(raw_ostream &OS,
234234 }
235235 OS << " /// Get the weight in units of pressure for this register unit.\n "
236236 << " unsigned " << ClassName << " ::\n "
237- << " getRegUnitWeight(unsigned RegUnit) const {\n "
238- << " assert(RegUnit < " << RegBank. getNumNativeRegUnits ()
239- << " && \" invalid register unit\" );\n " ;
237+ << " getRegUnitWeight(MCRegUnit RegUnit) const {\n "
238+ << " assert(static_cast<unsigned>( RegUnit) < "
239+ << RegBank. getNumNativeRegUnits () << " && \" invalid register unit\" );\n " ;
240240 if (!RegUnitsHaveUnitWeight) {
241241 OS << " static const uint8_t RUWeightTable[] = {\n " ;
242242 for (unsigned UnitIdx = 0 , UnitEnd = RegBank.getNumNativeRegUnits ();
@@ -246,7 +246,7 @@ void RegisterInfoEmitter::EmitRegUnitPressure(raw_ostream &OS,
246246 OS << RU.Weight << " , " ;
247247 }
248248 OS << " };\n "
249- << " return RUWeightTable[RegUnit];\n " ;
249+ << " return RUWeightTable[static_cast<unsigned>( RegUnit) ];\n " ;
250250 } else {
251251 OS << " // All register units have unit weight.\n "
252252 << " return 1;\n " ;
@@ -330,9 +330,9 @@ void RegisterInfoEmitter::EmitRegUnitPressure(raw_ostream &OS,
330330 << " register unit.\n "
331331 << " /// Returns a -1 terminated array of pressure set IDs\n "
332332 << " const int *" << ClassName << " ::\n "
333- << " getRegUnitPressureSets(unsigned RegUnit) const {\n "
334- << " assert(RegUnit < " << RegBank. getNumNativeRegUnits ()
335- << " && \" invalid register unit\" );\n " ;
333+ << " getRegUnitPressureSets(MCRegUnit RegUnit) const {\n "
334+ << " assert(static_cast<unsigned>( RegUnit) < "
335+ << RegBank. getNumNativeRegUnits () << " && \" invalid register unit\" );\n " ;
336336 OS << " static const " << getMinimalTypeForRange (PSetsSeqs.size () - 1 , 32 )
337337 << " RUSetStartTable[] = {\n " ;
338338 for (unsigned UnitIdx = 0 , UnitEnd = RegBank.getNumNativeRegUnits ();
@@ -341,7 +341,8 @@ void RegisterInfoEmitter::EmitRegUnitPressure(raw_ostream &OS,
341341 << " ," ;
342342 }
343343 OS << " };\n "
344- << " return &RCSetsTable[RUSetStartTable[RegUnit]];\n "
344+ << " return "
345+ " &RCSetsTable[RUSetStartTable[static_cast<unsigned>(RegUnit)]];\n "
345346 << " }\n\n " ;
346347}
347348
@@ -1168,15 +1169,15 @@ void RegisterInfoEmitter::runTargetHeader(raw_ostream &OS) {
11681169 }
11691170 OS << " const RegClassWeight &getRegClassWeight("
11701171 << " const TargetRegisterClass *RC) const override;\n "
1171- << " unsigned getRegUnitWeight(unsigned RegUnit) const override;\n "
1172+ << " unsigned getRegUnitWeight(MCRegUnit RegUnit) const override;\n "
11721173 << " unsigned getNumRegPressureSets() const override;\n "
11731174 << " const char *getRegPressureSetName(unsigned Idx) const override;\n "
11741175 << " unsigned getRegPressureSetLimit(const MachineFunction &MF, unsigned "
11751176 " Idx) const override;\n "
11761177 << " const int *getRegClassPressureSets("
11771178 << " const TargetRegisterClass *RC) const override;\n "
11781179 << " const int *getRegUnitPressureSets("
1179- << " unsigned RegUnit) const override;\n "
1180+ << " MCRegUnit RegUnit) const override;\n "
11801181 << " ArrayRef<const char *> getRegMaskNames() const override;\n "
11811182 << " ArrayRef<const uint32_t *> getRegMasks() const override;\n "
11821183 << " bool isGeneralPurposeRegister(const MachineFunction &, "
0 commit comments