ethereum.osaka.vm.instructions
EVM Instruction Encoding (Opcodes) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. contents:: Table of Contents :backlinks: none :local:
Introduction
Machine readable representations of EVM instructions, and a mapping to their implementations.
Ops
Enum for EVM Opcodes
class Ops:
ADD
39 | ADD = 0x01 |
---|
MUL
40 | MUL = 0x02 |
---|
SUB
41 | SUB = 0x03 |
---|
DIV
42 | DIV = 0x04 |
---|
SDIV
43 | SDIV = 0x05 |
---|
MOD
44 | MOD = 0x06 |
---|
SMOD
45 | SMOD = 0x07 |
---|
ADDMOD
46 | ADDMOD = 0x08 |
---|
MULMOD
47 | MULMOD = 0x09 |
---|
EXP
48 | EXP = 0x0A |
---|
SIGNEXTEND
49 | SIGNEXTEND = 0x0B |
---|
LT
52 | LT = 0x10 |
---|
GT
53 | GT = 0x11 |
---|
SLT
54 | SLT = 0x12 |
---|
SGT
55 | SGT = 0x13 |
---|
EQ
56 | EQ = 0x14 |
---|
ISZERO
57 | ISZERO = 0x15 |
---|
AND
60 | AND = 0x16 |
---|
OR
61 | OR = 0x17 |
---|
XOR
62 | XOR = 0x18 |
---|
NOT
63 | NOT = 0x19 |
---|
BYTE
64 | BYTE = 0x1A |
---|
SHL
65 | SHL = 0x1B |
---|
SHR
66 | SHR = 0x1C |
---|
SAR
67 | SAR = 0x1D |
---|
CLZ
68 | CLZ = 0x1E |
---|
KECCAK
71 | KECCAK = 0x20 |
---|
ADDRESS
74 | ADDRESS = 0x30 |
---|
BALANCE
75 | BALANCE = 0x31 |
---|
ORIGIN
76 | ORIGIN = 0x32 |
---|
CALLER
77 | CALLER = 0x33 |
---|
CALLVALUE
78 | CALLVALUE = 0x34 |
---|
CALLDATALOAD
79 | CALLDATALOAD = 0x35 |
---|
CALLDATASIZE
80 | CALLDATASIZE = 0x36 |
---|
CALLDATACOPY
81 | CALLDATACOPY = 0x37 |
---|
CODESIZE
82 | CODESIZE = 0x38 |
---|
CODECOPY
83 | CODECOPY = 0x39 |
---|
GASPRICE
84 | GASPRICE = 0x3A |
---|
EXTCODESIZE
85 | EXTCODESIZE = 0x3B |
---|
EXTCODECOPY
86 | EXTCODECOPY = 0x3C |
---|
RETURNDATASIZE
87 | RETURNDATASIZE = 0x3D |
---|
RETURNDATACOPY
88 | RETURNDATACOPY = 0x3E |
---|
EXTCODEHASH
89 | EXTCODEHASH = 0x3F |
---|
BLOCKHASH
92 | BLOCKHASH = 0x40 |
---|
COINBASE
93 | COINBASE = 0x41 |
---|
TIMESTAMP
94 | TIMESTAMP = 0x42 |
---|
NUMBER
95 | NUMBER = 0x43 |
---|
PREVRANDAO
96 | PREVRANDAO = 0x44 |
---|
GASLIMIT
97 | GASLIMIT = 0x45 |
---|
CHAINID
98 | CHAINID = 0x46 |
---|
SELFBALANCE
99 | SELFBALANCE = 0x47 |
---|
BASEFEE
100 | BASEFEE = 0x48 |
---|
BLOBHASH
101 | BLOBHASH = 0x49 |
---|
BLOBBASEFEE
102 | BLOBBASEFEE = 0x4A |
---|
STOP
105 | STOP = 0x00 |
---|
JUMP
106 | JUMP = 0x56 |
---|
JUMPI
107 | JUMPI = 0x57 |
---|
PC
108 | PC = 0x58 |
---|
GAS
109 | GAS = 0x5A |
---|
JUMPDEST
110 | JUMPDEST = 0x5B |
---|
SLOAD
113 | SLOAD = 0x54 |
---|
SSTORE
114 | SSTORE = 0x55 |
---|
TLOAD
115 | TLOAD = 0x5C |
---|
TSTORE
116 | TSTORE = 0x5D |
---|
POP
119 | POP = 0x50 |
---|
PUSH0
122 | PUSH0 = 0x5F |
---|
PUSH1
123 | PUSH1 = 0x60 |
---|
PUSH2
124 | PUSH2 = 0x61 |
---|
PUSH3
125 | PUSH3 = 0x62 |
---|
PUSH4
126 | PUSH4 = 0x63 |
---|
PUSH5
127 | PUSH5 = 0x64 |
---|
PUSH6
128 | PUSH6 = 0x65 |
---|
PUSH7
129 | PUSH7 = 0x66 |
---|
PUSH8
130 | PUSH8 = 0x67 |
---|
PUSH9
131 | PUSH9 = 0x68 |
---|
PUSH10
132 | PUSH10 = 0x69 |
---|
PUSH11
133 | PUSH11 = 0x6A |
---|
PUSH12
134 | PUSH12 = 0x6B |
---|
PUSH13
135 | PUSH13 = 0x6C |
---|
PUSH14
136 | PUSH14 = 0x6D |
---|
PUSH15
137 | PUSH15 = 0x6E |
---|
PUSH16
138 | PUSH16 = 0x6F |
---|
PUSH17
139 | PUSH17 = 0x70 |
---|
PUSH18
140 | PUSH18 = 0x71 |
---|
PUSH19
141 | PUSH19 = 0x72 |
---|
PUSH20
142 | PUSH20 = 0x73 |
---|
PUSH21
143 | PUSH21 = 0x74 |
---|
PUSH22
144 | PUSH22 = 0x75 |
---|
PUSH23
145 | PUSH23 = 0x76 |
---|
PUSH24
146 | PUSH24 = 0x77 |
---|
PUSH25
147 | PUSH25 = 0x78 |
---|
PUSH26
148 | PUSH26 = 0x79 |
---|
PUSH27
149 | PUSH27 = 0x7A |
---|
PUSH28
150 | PUSH28 = 0x7B |
---|
PUSH29
151 | PUSH29 = 0x7C |
---|
PUSH30
152 | PUSH30 = 0x7D |
---|
PUSH31
153 | PUSH31 = 0x7E |
---|
PUSH32
154 | PUSH32 = 0x7F |
---|
DUP1
157 | DUP1 = 0x80 |
---|
DUP2
158 | DUP2 = 0x81 |
---|
DUP3
159 | DUP3 = 0x82 |
---|
DUP4
160 | DUP4 = 0x83 |
---|
DUP5
161 | DUP5 = 0x84 |
---|
DUP6
162 | DUP6 = 0x85 |
---|
DUP7
163 | DUP7 = 0x86 |
---|
DUP8
164 | DUP8 = 0x87 |
---|
DUP9
165 | DUP9 = 0x88 |
---|
DUP10
166 | DUP10 = 0x89 |
---|
DUP11
167 | DUP11 = 0x8A |
---|
DUP12
168 | DUP12 = 0x8B |
---|
DUP13
169 | DUP13 = 0x8C |
---|
DUP14
170 | DUP14 = 0x8D |
---|
DUP15
171 | DUP15 = 0x8E |
---|
DUP16
172 | DUP16 = 0x8F |
---|
SWAP1
175 | SWAP1 = 0x90 |
---|
SWAP2
176 | SWAP2 = 0x91 |
---|
SWAP3
177 | SWAP3 = 0x92 |
---|
SWAP4
178 | SWAP4 = 0x93 |
---|
SWAP5
179 | SWAP5 = 0x94 |
---|
SWAP6
180 | SWAP6 = 0x95 |
---|
SWAP7
181 | SWAP7 = 0x96 |
---|
SWAP8
182 | SWAP8 = 0x97 |
---|
SWAP9
183 | SWAP9 = 0x98 |
---|
SWAP10
184 | SWAP10 = 0x99 |
---|
SWAP11
185 | SWAP11 = 0x9A |
---|
SWAP12
186 | SWAP12 = 0x9B |
---|
SWAP13
187 | SWAP13 = 0x9C |
---|
SWAP14
188 | SWAP14 = 0x9D |
---|
SWAP15
189 | SWAP15 = 0x9E |
---|
SWAP16
190 | SWAP16 = 0x9F |
---|
MLOAD
193 | MLOAD = 0x51 |
---|
MSTORE
194 | MSTORE = 0x52 |
---|
MSTORE8
195 | MSTORE8 = 0x53 |
---|
MSIZE
196 | MSIZE = 0x59 |
---|
MCOPY
197 | MCOPY = 0x5E |
---|
LOG0
200 | LOG0 = 0xA0 |
---|
LOG1
201 | LOG1 = 0xA1 |
---|
LOG2
202 | LOG2 = 0xA2 |
---|
LOG3
203 | LOG3 = 0xA3 |
---|
LOG4
204 | LOG4 = 0xA4 |
---|
CREATE
207 | CREATE = 0xF0 |
---|
CALL
208 | CALL = 0xF1 |
---|
CALLCODE
209 | CALLCODE = 0xF2 |
---|
RETURN
210 | RETURN = 0xF3 |
---|
DELEGATECALL
211 | DELEGATECALL = 0xF4 |
---|
CREATE2
212 | CREATE2 = 0xF5 |
---|
STATICCALL
213 | STATICCALL = 0xFA |
---|
REVERT
214 | REVERT = 0xFD |
---|
SELFDESTRUCT
215 | SELFDESTRUCT = 0xFF |
---|