[llvm] e9035ea - [CSKY] Use parseOptionalToken. NFC
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 15 12:31:18 PDT 2023
Author: Fangrui Song
Date: 2023-06-15T12:31:14-07:00
New Revision: e9035ea4057da30c714266941195de3ef8898b2d
URL: https://github.com/llvm/llvm-project/commit/e9035ea4057da30c714266941195de3ef8898b2d
DIFF: https://github.com/llvm/llvm-project/commit/e9035ea4057da30c714266941195de3ef8898b2d.diff
LOG: [CSKY] Use parseOptionalToken. NFC
Many code paths are untested.
Some "expected ..." messages are adjusted, otherwise NFC.
Added:
Modified:
llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp b/llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
index 2b1e2e7c366e8..413c331f1c3a2 100644
--- a/llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
+++ b/llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
@@ -1254,11 +1254,8 @@ OperandMatchResultTy CSKYAsmParser::parseDataSymbol(OperandVector &Operands) {
SMLoc E = SMLoc::getFromPointer(S.getPointer() - 1);
const MCExpr *Res;
- if (getLexer().getKind() != AsmToken::LBrac)
+ if (!parseOptionalToken(AsmToken::LBrac))
return MatchOperand_NoMatch;
-
- getLexer().Lex(); // Eat '['.
-
if (getLexer().getKind() != AsmToken::Identifier) {
const MCExpr *Expr;
if (getParser().parseExpression(Expr)) {
@@ -1266,12 +1263,8 @@ OperandMatchResultTy CSKYAsmParser::parseDataSymbol(OperandVector &Operands) {
return MatchOperand_ParseFail;
}
- if (getLexer().getKind() != AsmToken::RBrac) {
- Error(getLoc(), "expected ]");
+ if (parseToken(AsmToken::RBrac, "expected ']'"))
return MatchOperand_ParseFail;
- }
-
- getLexer().Lex(); // Eat ']'.
Operands.push_back(CSKYOperand::createConstpoolOp(Expr, S, E));
return MatchOperand_Success;
@@ -1337,13 +1330,8 @@ OperandMatchResultTy CSKYAsmParser::parseDataSymbol(OperandVector &Operands) {
Error(getLoc(), "unknown expression");
return MatchOperand_ParseFail;
}
-
- if (getLexer().getKind() != AsmToken::RBrac) {
- Error(getLoc(), "expected ']'");
+ if (parseToken(AsmToken::RBrac, "expected ']'"))
return MatchOperand_ParseFail;
- }
-
- getLexer().Lex(); // Eat ']'.
Res = MCBinaryExpr::create(Opcode, Res, Expr, getContext());
Operands.push_back(CSKYOperand::createConstpoolOp(Res, S, E));
@@ -1356,24 +1344,17 @@ CSKYAsmParser::parseConstpoolSymbol(OperandVector &Operands) {
SMLoc E = SMLoc::getFromPointer(S.getPointer() - 1);
const MCExpr *Res;
- if (getLexer().getKind() != AsmToken::LBrac)
+ if (!parseOptionalToken(AsmToken::LBrac))
return MatchOperand_NoMatch;
- getLexer().Lex(); // Eat '['.
-
if (getLexer().getKind() != AsmToken::Identifier) {
const MCExpr *Expr;
if (getParser().parseExpression(Expr)) {
Error(getLoc(), "unknown expression");
return MatchOperand_ParseFail;
}
-
- if (getLexer().getKind() != AsmToken::RBrac) {
- Error(getLoc(), "expected ']'");
+ if (parseToken(AsmToken::RBrac))
return MatchOperand_ParseFail;
- }
-
- getLexer().Lex(); // Eat ']'.
Operands.push_back(CSKYOperand::createConstpoolOp(Expr, S, E));
return MatchOperand_Success;
@@ -1430,13 +1411,8 @@ CSKYAsmParser::parseConstpoolSymbol(OperandVector &Operands) {
Error(getLoc(), "unknown expression");
return MatchOperand_ParseFail;
}
-
- if (getLexer().getKind() != AsmToken::RBrac) {
- Error(getLoc(), "expected ']'");
+ if (parseToken(AsmToken::RBrac, "expected ']'"))
return MatchOperand_ParseFail;
- }
-
- getLexer().Lex(); // Eat ']'.
Res = MCBinaryExpr::create(Opcode, Res, Expr, getContext());
Operands.push_back(CSKYOperand::createConstpoolOp(Res, S, E));
@@ -1474,12 +1450,8 @@ OperandMatchResultTy CSKYAsmParser::parsePSRFlag(OperandVector &Operands) {
if (getLexer().is(AsmToken::EndOfStatement))
break;
- if (getLexer().is(AsmToken::Comma)) {
- getLexer().Lex(); // eat ','
- } else {
- Error(getLoc(), "expected ,");
+ if (parseToken(AsmToken::Comma, "expected ','"))
return MatchOperand_ParseFail;
- }
}
Operands.push_back(
@@ -1496,13 +1468,8 @@ OperandMatchResultTy CSKYAsmParser::parseRegSeq(OperandVector &Operands) {
auto Ry = Operands.back()->getReg();
Operands.pop_back();
- if (getLexer().isNot(AsmToken::Minus)) {
- Error(getLoc(), "expected '-'");
+ if (parseToken(AsmToken::Minus, "expected '-'"))
return MatchOperand_ParseFail;
- }
-
- getLexer().Lex(); // eat '-'
-
if (parseRegister(Operands) != MatchOperand_Success) {
Error(getLoc(), "invalid register");
return MatchOperand_ParseFail;
@@ -1530,9 +1497,7 @@ OperandMatchResultTy CSKYAsmParser::parseRegList(OperandVector &Operands) {
auto Ry = Operands.back()->getReg();
Operands.pop_back();
- if (getLexer().is(AsmToken::Minus)) {
- getLexer().Lex(); // eat '-'
-
+ if (parseOptionalToken(AsmToken::Minus)) {
if (parseRegister(Operands) != MatchOperand_Success) {
Error(getLoc(), "invalid register");
return MatchOperand_ParseFail;
@@ -1544,16 +1509,12 @@ OperandMatchResultTy CSKYAsmParser::parseRegList(OperandVector &Operands) {
reglist.push_back(Ry);
reglist.push_back(Rz);
- if (getLexer().is(AsmToken::Comma))
- getLexer().Lex(); // eat ','
- else if (getLexer().is(AsmToken::EndOfStatement))
+ if (getLexer().is(AsmToken::EndOfStatement))
break;
-
- } else if (getLexer().is(AsmToken::Comma)) {
+ (void)parseOptionalToken(AsmToken::Comma);
+ } else if (parseOptionalToken(AsmToken::Comma)) {
reglist.push_back(Ry);
reglist.push_back(Ry);
-
- getLexer().Lex(); // eat ','
} else if (getLexer().is(AsmToken::EndOfStatement)) {
reglist.push_back(Ry);
reglist.push_back(Ry);
@@ -1582,14 +1543,9 @@ bool CSKYAsmParser::ParseInstruction(ParseInstructionInfo &Info, StringRef Name,
return true;
// Parse until end of statement, consuming commas between operands.
- while (getLexer().is(AsmToken::Comma)) {
- // Consume comma token.
- getLexer().Lex();
-
- // Parse next operand.
+ while (parseOptionalToken(AsmToken::Comma))
if (parseOperand(Operands, Name))
return true;
- }
if (getLexer().isNot(AsmToken::EndOfStatement)) {
SMLoc Loc = getLexer().getLoc();
More information about the llvm-commits
mailing list