From f6a3a06de3d32eaeba1f3c8bbc5faa5ffaeb1128 Mon Sep 17 00:00:00 2001 From: Richard-Qin-X Date: Mon, 17 Aug 2026 02:22:27 +0800 Subject: [RISCV][GlobalISel] Generate integer extension selections --- backend/include/rcc/CodeGen/GlobalISel/GIMatchTableExecutor.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'backend/include/rcc/CodeGen/GlobalISel/GIMatchTableExecutor.h') diff --git a/backend/include/rcc/CodeGen/GlobalISel/GIMatchTableExecutor.h b/backend/include/rcc/CodeGen/GlobalISel/GIMatchTableExecutor.h index fbbf68f..098f9d6 100644 --- a/backend/include/rcc/CodeGen/GlobalISel/GIMatchTableExecutor.h +++ b/backend/include/rcc/CodeGen/GlobalISel/GIMatchTableExecutor.h @@ -37,6 +37,8 @@ enum class GIMatchTableOpcode : std::uint8_t { CheckOperandBank, CheckOperandClass, CheckIntegerPredicate, + CheckTargetPredicate, + CheckOperandImmediateRanges, CheckOperandDefConstantRanges, CheckOperandDefOpcode, CheckOperandDefOperandConstantRanges, @@ -108,6 +110,10 @@ public: const TargetDescription &Target) const; protected: + [[nodiscard]] virtual Expected + matchesTargetPredicate(std::string_view Name, const MachineInstr &Instruction, + const MachineFunction &Function, const TargetDescription &Target) const; + [[nodiscard]] virtual Expected> renderComplexOperand(std::string_view Name, const MachineInstr &Instruction, const MachineFunction &Function, const TargetDescription &Target, -- cgit v1.2.3