[llvm] eb7bff4 - RISCVAsmParser: Simplify with parseToken. NFC
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 28 00:42:03 PDT 2023
Author: Fangrui Song
Date: 2023-04-28T00:41:59-07:00
New Revision: eb7bff4fe74f9e036e29a11051da4c29fddd8089
URL: https://github.com/llvm/llvm-project/commit/eb7bff4fe74f9e036e29a11051da4c29fddd8089
DIFF: https://github.com/llvm/llvm-project/commit/eb7bff4fe74f9e036e29a11051da4c29fddd8089.diff
LOG: RISCVAsmParser: Simplify with parseToken. NFC
Added:
Modified:
llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp b/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
index 0df5cddbd79bf..0d38cc3250605 100644
--- a/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
+++ b/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
@@ -1802,12 +1802,8 @@ RISCVAsmParser::parseOperandWithModifier(OperandVector &Operands) {
SMLoc S = getLoc();
SMLoc E;
- if (getLexer().getKind() != AsmToken::Percent) {
- Error(getLoc(), "expected '%' for operand modifier");
+ if (parseToken(AsmToken::Percent, "expected '%' for operand modifier"))
return MatchOperand_ParseFail;
- }
-
- getParser().Lex(); // Eat '%'
if (getLexer().getKind() != AsmToken::Identifier) {
Error(getLoc(), "expected valid identifier for operand modifier");
@@ -1821,11 +1817,8 @@ RISCVAsmParser::parseOperandWithModifier(OperandVector &Operands) {
}
getParser().Lex(); // Eat the identifier
- if (getLexer().getKind() != AsmToken::LParen) {
- Error(getLoc(), "expected '('");
+ if (parseToken(AsmToken::LParen, "expected '('"))
return MatchOperand_ParseFail;
- }
- getParser().Lex(); // Eat '('
const MCExpr *SubExpr;
if (getParser().parseParenExpression(SubExpr, E)) {
@@ -2159,12 +2152,8 @@ OperandMatchResultTy RISCVAsmParser::parseFenceArg(OperandVector &Operands) {
OperandMatchResultTy
RISCVAsmParser::parseMemOpBaseReg(OperandVector &Operands) {
- if (getLexer().isNot(AsmToken::LParen)) {
- Error(getLoc(), "expected '('");
+ if (parseToken(AsmToken::LParen, "expected '('"))
return MatchOperand_ParseFail;
- }
-
- getParser().Lex(); // Eat '('
Operands.push_back(RISCVOperand::createToken("(", getLoc()));
if (parseRegister(Operands) != MatchOperand_Success) {
@@ -2172,12 +2161,8 @@ RISCVAsmParser::parseMemOpBaseReg(OperandVector &Operands) {
return MatchOperand_ParseFail;
}
- if (getLexer().isNot(AsmToken::RParen)) {
- Error(getLoc(), "expected ')'");
+ if (parseToken(AsmToken::RParen, "expected ')'"))
return MatchOperand_ParseFail;
- }
-
- getParser().Lex(); // Eat ')'
Operands.push_back(RISCVOperand::createToken(")", getLoc()));
return MatchOperand_Success;
@@ -2223,23 +2208,18 @@ RISCVAsmParser::parseZeroOffsetMemOp(OperandVector &Operands) {
ImmStart, ImmEnd, isRV64());
}
- if (getLexer().isNot(AsmToken::LParen)) {
- Error(getLoc(), OptionalImmOp ? "expected '(' after optional integer offset"
- : "expected '(' or optional integer offset");
+ if (parseToken(AsmToken::LParen,
+ OptionalImmOp ? "expected '(' after optional integer offset"
+ : "expected '(' or optional integer offset"))
return MatchOperand_ParseFail;
- }
- getParser().Lex(); // Eat '('
if (parseRegister(Operands) != MatchOperand_Success) {
Error(getLoc(), "expected register");
return MatchOperand_ParseFail;
}
- if (getLexer().isNot(AsmToken::RParen)) {
- Error(getLoc(), "expected ')'");
+ if (parseToken(AsmToken::RParen, "expected ')'"))
return MatchOperand_ParseFail;
- }
- getParser().Lex(); // Eat ')'
// Deferred Handling of non-zero offsets. This makes the error messages nicer.
if (OptionalImmOp && !OptionalImmOp->isImmZero()) {
@@ -2322,13 +2302,10 @@ bool RISCVAsmParser::ParseInstruction(ParseInstructionInfo &Info,
return true;
}
- if (getLexer().isNot(AsmToken::EndOfStatement)) {
- SMLoc Loc = getLexer().getLoc();
+ if (getParser().parseEOL("unexpected token")) {
getParser().eatToEndOfStatement();
- return Error(Loc, "unexpected token");
+ return true;
}
-
- getParser().Lex(); // Consume the EndOfStatement.
return false;
}
More information about the llvm-commits
mailing list