[llvm] d99b043 - [TableGen] Move hasCompleteDecoder bit from Operand to DAGOperand (#153165)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 12 10:47:29 PDT 2025
Author: Sergei Barannikov
Date: 2025-08-12T20:47:26+03:00
New Revision: d99b043279e6c0a3290cfe06d069d061737cbdcc
URL: https://github.com/llvm/llvm-project/commit/d99b043279e6c0a3290cfe06d069d061737cbdcc
DIFF: https://github.com/llvm/llvm-project/commit/d99b043279e6c0a3290cfe06d069d061737cbdcc.diff
LOG: [TableGen] Move hasCompleteDecoder bit from Operand to DAGOperand (#153165)
The bit works with any kind of instruction operands, not only `Operand`.
Move it to the base class of all operands so that targets are aware of
it and can use "let hasCompleteDecoder = ..." in records derived from
RegisterClass/RegisterOperand.
Added:
Modified:
llvm/include/llvm/Target/Target.td
Removed:
################################################################################
diff --git a/llvm/include/llvm/Target/Target.td b/llvm/include/llvm/Target/Target.td
index 4c83f8a580aa0..495b59ee916cf 100644
--- a/llvm/include/llvm/Target/Target.td
+++ b/llvm/include/llvm/Target/Target.td
@@ -250,6 +250,7 @@ class RegisterWithSubRegs<string n, list<Register> subregs> : Register<n> {
class DAGOperand {
string OperandNamespace = "MCOI";
string DecoderMethod = "";
+ bit hasCompleteDecoder = true;
}
// RegisterClass - Now that all of the registers are defined, and aliases
@@ -1003,7 +1004,6 @@ class Operand<ValueType ty> : DAGOperand {
ValueType Type = ty;
string PrintMethod = "printOperand";
string EncoderMethod = "";
- bit hasCompleteDecoder = true;
string OperandType = "OPERAND_UNKNOWN";
dag MIOperandInfo = (ops);
More information about the llvm-commits
mailing list