@@ -154,7 +154,7 @@ struct CSKYOperand : public MCParsedAsmOperand {
154154 } Kind;
155155
156156 struct RegOp {
157- unsigned RegNum;
157+ MCRegister RegNum;
158158 };
159159
160160 struct ImmOp {
@@ -166,19 +166,19 @@ struct CSKYOperand : public MCParsedAsmOperand {
166166 };
167167
168168 struct RegSeqOp {
169- unsigned RegNumFrom;
170- unsigned RegNumTo;
169+ MCRegister RegNumFrom;
170+ MCRegister RegNumTo;
171171 };
172172
173173 struct RegListOp {
174- unsigned List1From = 0 ;
175- unsigned List1To = 0 ;
176- unsigned List2From = 0 ;
177- unsigned List2To = 0 ;
178- unsigned List3From = 0 ;
179- unsigned List3To = 0 ;
180- unsigned List4From = 0 ;
181- unsigned List4To = 0 ;
174+ MCRegister List1From;
175+ MCRegister List1To;
176+ MCRegister List2From;
177+ MCRegister List2To;
178+ MCRegister List3From;
179+ MCRegister List3To;
180+ MCRegister List4From;
181+ MCRegister List4To;
182182 };
183183
184184 SMLoc StartLoc, EndLoc;
@@ -405,9 +405,9 @@ struct CSKYOperand : public MCParsedAsmOperand {
405405 return Reg.RegNum ;
406406 }
407407
408- std::pair<unsigned , unsigned > getRegSeq () const {
408+ std::pair<MCRegister, MCRegister > getRegSeq () const {
409409 assert (Kind == RegisterSeq && " Invalid type access!" );
410- return std::pair< unsigned , unsigned >( RegSeq.RegNumFrom , RegSeq.RegNumTo ) ;
410+ return { RegSeq.RegNumFrom , RegSeq.RegNumTo } ;
411411 }
412412
413413 RegListOp getRegList () const {
@@ -478,7 +478,7 @@ struct CSKYOperand : public MCParsedAsmOperand {
478478 return Op;
479479 }
480480
481- static std::unique_ptr<CSKYOperand> createReg (unsigned RegNo, SMLoc S,
481+ static std::unique_ptr<CSKYOperand> createReg (MCRegister RegNo, SMLoc S,
482482 SMLoc E) {
483483 auto Op = std::make_unique<CSKYOperand>(Register);
484484 Op->Reg .RegNum = RegNo;
@@ -487,8 +487,8 @@ struct CSKYOperand : public MCParsedAsmOperand {
487487 return Op;
488488 }
489489
490- static std::unique_ptr<CSKYOperand> createRegSeq ( unsigned RegNoFrom,
491- unsigned RegNoTo, SMLoc S) {
490+ static std::unique_ptr<CSKYOperand>
491+ createRegSeq (MCRegister RegNoFrom, MCRegister RegNoTo, SMLoc S) {
492492 auto Op = std::make_unique<CSKYOperand>(RegisterSeq);
493493 Op->RegSeq .RegNumFrom = RegNoFrom;
494494 Op->RegSeq .RegNumTo = RegNoTo;
@@ -498,7 +498,7 @@ struct CSKYOperand : public MCParsedAsmOperand {
498498 }
499499
500500 static std::unique_ptr<CSKYOperand>
501- createRegList (SmallVector<unsigned , 4 > reglist, SMLoc S) {
501+ createRegList (const SmallVector<MCRegister , 4 > & reglist, SMLoc S) {
502502 auto Op = std::make_unique<CSKYOperand>(RegisterList);
503503 Op->RegList .List1From = 0 ;
504504 Op->RegList .List1To = 0 ;
@@ -1445,9 +1445,7 @@ ParseStatus CSKYAsmParser::parseRegSeq(OperandVector &Operands) {
14451445
14461446ParseStatus CSKYAsmParser::parseRegList (OperandVector &Operands) {
14471447 SMLoc S = getLoc ();
1448-
1449- SmallVector<unsigned , 4 > reglist;
1450-
1448+ SmallVector<MCRegister, 4 > reglist;
14511449 while (true ) {
14521450
14531451 if (!parseRegister (Operands).isSuccess ())
0 commit comments