Skip to content

Commit a5289f2

Browse files
committed
[EraVM] Remove Value field from OpcodeEncoding
This field's value has no particular meaning neither in TableGen nor in C++ and can be autogenerated if GenericEnum is ever desired.
1 parent 2d06889 commit a5289f2

File tree

1 file changed

+13
-15
lines changed

1 file changed

+13
-15
lines changed

llvm/lib/Target/EraVM/EraVMOpcodes.td

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,7 @@ class isStackOut<DstMode dst> {
5555
!eq(dst, DstStackAbsolute));
5656
}
5757

58-
class OpcodeEncoding<bits<4> val> {
59-
bits<4> Value = val;
60-
58+
class OpcodeEncoding {
6159
bits<11> SrcMultiplier = 0; // No in_any operand by default.
6260
bits<11> DstMultiplier = 0; // No out_any operand by default.
6361

@@ -67,23 +65,23 @@ class OpcodeEncoding<bits<4> val> {
6765
// the beginning of InOperandList.
6866
}
6967

70-
def DirectEncoding : OpcodeEncoding<0>; // opcode ⇒ opcode
68+
def DirectEncoding : OpcodeEncoding; // opcode ⇒ opcode
7169
let SrcMultiplier = 4, DstMultiplier = 1, IndexOfStackDstUse = 2 in
72-
def NopEncoding : OpcodeEncoding<1>; // opcode src dst ⇒ opcode + 4 × src + 1 × dst
70+
def NopEncoding : OpcodeEncoding; // opcode src dst ⇒ opcode + 4 × src + 1 × dst
7371
let SrcMultiplier = 8, DstMultiplier = 2, IndexOfStackDstUse = 2 in
74-
def ArithCommEncoding : OpcodeEncoding<2>; // opcode src dst set_flags ⇒ opcode + 8 × src + 2 × dst + set_flags
72+
def ArithCommEncoding : OpcodeEncoding; // opcode src dst set_flags ⇒ opcode + 8 × src + 2 × dst + set_flags
7573
let SrcMultiplier = 16, DstMultiplier = 4, IndexOfStackDstUse = 2 in
76-
def ArithNCommEncoding : OpcodeEncoding<3>; // opcode src dst swap set_flags ⇒ opcode + 16 × src + 4 × dst + 2 × set_flags + swap
74+
def ArithNCommEncoding : OpcodeEncoding; // opcode src dst swap set_flags ⇒ opcode + 16 × src + 4 × dst + 2 × set_flags + swap
7775
let SrcMultiplier = 8, DstMultiplier = 2, IndexOfStackDstUse = 2 in
78-
def ArithPtrEncoding : OpcodeEncoding<4>; // opcode src dst swap ⇒ opcode + 8 × src + 2 × dst + swap
79-
def FarCallEncoding : OpcodeEncoding<5>; // opcode is_shard is_static ⇒ opcode + 2 × is_static + is_shard
80-
def RetEncoding : OpcodeEncoding<6>; // opcode to_label ⇒ opcode + to_label
76+
def ArithPtrEncoding : OpcodeEncoding; // opcode src dst swap ⇒ opcode + 8 × src + 2 × dst + swap
77+
def FarCallEncoding : OpcodeEncoding; // opcode is_shard is_static ⇒ opcode + 2 × is_static + is_shard
78+
def RetEncoding : OpcodeEncoding; // opcode to_label ⇒ opcode + to_label
8179
let SrcMultiplier = 1 in
82-
def JumpEncoding : OpcodeEncoding<7>; // opcode src ⇒ opcode + 1 × src
83-
def LoadPtrEncoding : OpcodeEncoding<8>; // opcode inc ⇒ opcode + inc
84-
def HeapOpEncoding : OpcodeEncoding<9>; // opcode src_special inc ⇒ opcode + 10 × src_special + inc
85-
def LogEncoding : OpcodeEncoding<10>;// opcode is_first ⇒ opcode + is_first
86-
def StaticOpEncoding : OpcodeEncoding<11>;// opcode src_special inc ⇒ opcode + 2 × src_special + inc
80+
def JumpEncoding : OpcodeEncoding; // opcode src ⇒ opcode + 1 × src
81+
def LoadPtrEncoding : OpcodeEncoding; // opcode inc ⇒ opcode + inc
82+
def HeapOpEncoding : OpcodeEncoding; // opcode src_special inc ⇒ opcode + 10 × src_special + inc
83+
def LogEncoding : OpcodeEncoding; // opcode is_first ⇒ opcode + is_first
84+
def StaticOpEncoding : OpcodeEncoding; // opcode src_special inc ⇒ opcode + 2 × src_special + inc
8785

8886
class ArithOpcEncoder<OpcodeEncoding encoding, bits<11> BaseOpcode,
8987
SrcMode src, DstMode dst,

0 commit comments

Comments
 (0)