From 56c252e2f656f0c72f77aa8a708e0f1b5dbb815d Mon Sep 17 00:00:00 2001 From: Sam Elliott Date: Mon, 10 Feb 2025 17:40:10 -0800 Subject: [PATCH 1/2] [AsmParser] Remove OperandMatchResultTy This has been deprecated since a479be0f39a3301e9ca634d37cf6454b6d3865c6 from September 2023, before LLVM 18. Surely now enough release cycles have happened that it can be removed upstream. --- .../llvm/MC/MCParser/MCTargetAsmParser.h | 25 ++++--------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h b/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h index 4c88448e6a128..6df8b56925d9f 100644 --- a/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h +++ b/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h @@ -122,15 +122,13 @@ struct ParseInstructionInfo { : AsmRewrites(rewrites) {} }; -enum OperandMatchResultTy { - MatchOperand_Success, // operand matched successfully - MatchOperand_NoMatch, // operand did not match - MatchOperand_ParseFail // operand matched but had errors -}; - /// Ternary parse status returned by various parse* methods. class ParseStatus { - enum class StatusTy { Success, Failure, NoMatch } Status; + enum class StatusTy { + Success, // operand matched successfully + Failure, // operand matched but had errors + NoMatch // operand did not match + } Status; public: #if __cplusplus >= 202002L @@ -152,19 +150,6 @@ class ParseStatus { constexpr bool isSuccess() const { return Status == StatusTy::Success; } constexpr bool isFailure() const { return Status == StatusTy::Failure; } constexpr bool isNoMatch() const { return Status == StatusTy::NoMatch; } - - // Allow implicit conversions to / from OperandMatchResultTy. - LLVM_DEPRECATED("Migrate to ParseStatus", "") - constexpr ParseStatus(OperandMatchResultTy R) - : Status(R == MatchOperand_Success ? Success - : R == MatchOperand_ParseFail ? Failure - : NoMatch) {} - LLVM_DEPRECATED("Migrate to ParseStatus", "") - constexpr operator OperandMatchResultTy() const { - return isSuccess() ? MatchOperand_Success - : isFailure() ? MatchOperand_ParseFail - : MatchOperand_NoMatch; - } }; enum class DiagnosticPredicateTy { From 2819c27bbf7651dead570daac2f255da8c305d3b Mon Sep 17 00:00:00 2001 From: Sam Elliott Date: Mon, 10 Feb 2025 18:21:04 -0800 Subject: [PATCH 2/2] fixup! [AsmParser] Remove OperandMatchResultTy --- llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h b/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h index 6df8b56925d9f..443877391072c 100644 --- a/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h +++ b/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h @@ -125,9 +125,9 @@ struct ParseInstructionInfo { /// Ternary parse status returned by various parse* methods. class ParseStatus { enum class StatusTy { - Success, // operand matched successfully - Failure, // operand matched but had errors - NoMatch // operand did not match + Success, // Parsing Succeeded + Failure, // Parsing Failed after consuming some tokens + NoMatch, // Parsing Failed without consuming any tokens } Status; public: