@@ -1352,7 +1352,7 @@ bool SparcAsmParser::matchRegisterName(const AsmToken &Tok, MCRegister &RegNo,
13521352 return true ;
13531353 }
13541354
1355- if (name.substr ( 0 , 3 ). equals_insensitive (" asr" ) &&
1355+ if (name.starts_with_insensitive (" asr" ) &&
13561356 !name.substr (3 ).getAsInteger (10 , intVal) && intVal > 0 && intVal < 32 ) {
13571357 RegNo = ASRRegs[intVal];
13581358 RegKind = SparcOperand::rk_Special;
@@ -1421,7 +1421,7 @@ bool SparcAsmParser::matchRegisterName(const AsmToken &Tok, MCRegister &RegNo,
14211421 }
14221422
14231423 // %fcc0 - %fcc3
1424- if (name.substr ( 0 , 3 ). equals_insensitive (" fcc" ) &&
1424+ if (name.starts_with_insensitive (" fcc" ) &&
14251425 !name.substr (3 ).getAsInteger (10 , intVal) && intVal < 4 ) {
14261426 // FIXME: check 64bit and handle %fcc1 - %fcc3
14271427 RegNo = Sparc::FCC0 + intVal;
@@ -1430,40 +1430,40 @@ bool SparcAsmParser::matchRegisterName(const AsmToken &Tok, MCRegister &RegNo,
14301430 }
14311431
14321432 // %g0 - %g7
1433- if (name.substr ( 0 , 1 ). equals_insensitive (" g" ) &&
1433+ if (name.starts_with_insensitive (" g" ) &&
14341434 !name.substr (1 ).getAsInteger (10 , intVal) && intVal < 8 ) {
14351435 RegNo = IntRegs[intVal];
14361436 RegKind = SparcOperand::rk_IntReg;
14371437 return true ;
14381438 }
14391439 // %o0 - %o7
1440- if (name.substr ( 0 , 1 ). equals_insensitive (" o" ) &&
1440+ if (name.starts_with_insensitive (" o" ) &&
14411441 !name.substr (1 ).getAsInteger (10 , intVal) && intVal < 8 ) {
14421442 RegNo = IntRegs[8 + intVal];
14431443 RegKind = SparcOperand::rk_IntReg;
14441444 return true ;
14451445 }
1446- if (name.substr ( 0 , 1 ). equals_insensitive (" l" ) &&
1446+ if (name.starts_with_insensitive (" l" ) &&
14471447 !name.substr (1 ).getAsInteger (10 , intVal) && intVal < 8 ) {
14481448 RegNo = IntRegs[16 + intVal];
14491449 RegKind = SparcOperand::rk_IntReg;
14501450 return true ;
14511451 }
1452- if (name.substr ( 0 , 1 ). equals_insensitive (" i" ) &&
1452+ if (name.starts_with_insensitive (" i" ) &&
14531453 !name.substr (1 ).getAsInteger (10 , intVal) && intVal < 8 ) {
14541454 RegNo = IntRegs[24 + intVal];
14551455 RegKind = SparcOperand::rk_IntReg;
14561456 return true ;
14571457 }
14581458 // %f0 - %f31
1459- if (name.substr ( 0 , 1 ). equals_insensitive (" f" ) &&
1459+ if (name.starts_with_insensitive (" f" ) &&
14601460 !name.substr (1 , 2 ).getAsInteger (10 , intVal) && intVal < 32 ) {
14611461 RegNo = FloatRegs[intVal];
14621462 RegKind = SparcOperand::rk_FloatReg;
14631463 return true ;
14641464 }
14651465 // %f32 - %f62
1466- if (name.substr ( 0 , 1 ). equals_insensitive (" f" ) &&
1466+ if (name.starts_with_insensitive (" f" ) &&
14671467 !name.substr (1 , 2 ).getAsInteger (10 , intVal) && intVal >= 32 &&
14681468 intVal <= 62 && (intVal % 2 == 0 )) {
14691469 // FIXME: Check V9
@@ -1473,15 +1473,15 @@ bool SparcAsmParser::matchRegisterName(const AsmToken &Tok, MCRegister &RegNo,
14731473 }
14741474
14751475 // %r0 - %r31
1476- if (name.substr ( 0 , 1 ). equals_insensitive (" r" ) &&
1476+ if (name.starts_with_insensitive (" r" ) &&
14771477 !name.substr (1 , 2 ).getAsInteger (10 , intVal) && intVal < 31 ) {
14781478 RegNo = IntRegs[intVal];
14791479 RegKind = SparcOperand::rk_IntReg;
14801480 return true ;
14811481 }
14821482
14831483 // %c0 - %c31
1484- if (name.substr ( 0 , 1 ). equals_insensitive (" c" ) &&
1484+ if (name.starts_with_insensitive (" c" ) &&
14851485 !name.substr (1 ).getAsInteger (10 , intVal) && intVal < 32 ) {
14861486 RegNo = CoprocRegs[intVal];
14871487 RegKind = SparcOperand::rk_CoprocReg;
0 commit comments