Use mnemonics, not enums in asm descriptions

This commit is contained in:
pancake 2023-01-31 16:37:26 +01:00
parent 155d4cea35
commit 2eafded7fd

View File

@ -1,143 +1,143 @@
EVM_OP_STOP=halt execution
EVM_OP_ADD=(u)int256 addition modulo 2**256
EVM_OP_MUL=(u)int256 multiplication modulo 2**256
EVM_OP_SUB=(u)int256 addition modulo 2**256
EVM_OP_DIV=uint256 division
EVM_OP_SDIV=int256 division
EVM_OP_MOD=uint256 modulus
EVM_OP_SMOD=int256 modulus
EVM_OP_ADDMOD=(u)int256 addition modulo N
EVM_OP_MULMOD=(u)int256 multiplication modulo N
EVM_OP_EXP=uint256 exponentiation modulo 2**256
EVM_OP_SIGNEXTEND=sign extend x from (b+1) bytes to 32 bytes
EVM_OP_LT=uint256 less-than
EVM_OP_GT=uint256 greater-than
EVM_OP_SLT=int256 less-than
EVM_OP_SGT=int256 greater-than
EVM_OP_EQ=(u)int256 equality
EVM_OP_ISZERO=(u)int256 iszero
EVM_OP_AND=bitwise AND
EVM_OP_OR=bitwise OR
EVM_OP_XOR=bitwise XOR
EVM_OP_NOT=bitwise NOT
EVM_OP_BYTE=retrieve single byte from word
EVM_OP_SHL=shift left
EVM_OP_SHR=logical shift right
EVM_OP_SAR=arithmetic shift right
EVM_OP_SHA3=compute Keccak-256 hash
EVM_OP_ADDRESS=address of executing contract
EVM_OP_BALANCE=balance, in wei
EVM_OP_ORIGIN=address that originated the tx
EVM_OP_CALLER=address of msg sender
EVM_OP_CALLVALUE=msg value, in wei
EVM_OP_CALLDATALOAD=read word from msg data at index idx
EVM_OP_CALLDATASIZE=length of msg data, in bytes
EVM_OP_CALLDATACOPY=copy msg data
EVM_OP_CODESIZE=length of executing contract's code, in bytes
EVM_OP_CODECOPY=copy executing contract's bytecode
EVM_OP_GASPRICE=gas price of tx, in wei per unit gas
EVM_OP_EXTCODESIZE=size of code at addr, in bytes
EVM_OP_EXTCODECOPY=copy code from addr
EVM_OP_RETURNDATASIZE=size of returned data from last external call, in bytes
EVM_OP_RETURNDATACOPY=copy returned data from last external call
EVM_OP_EXTCODEHASH=get hash of an accounts code
EVM_OP_BLOCKHASH=get the hash of one of the 256 most recent complete blocks
EVM_OP_COINBASE=address of miner of current block
EVM_OP_TIMESTAMP=timestamp of current block
EVM_OP_NUMBER=number of current block
EVM_OP_DIFFICULTY=difficulty of current block
EVM_OP_GASLIMIT=gas limit of current block
EVM_OP_CHAINID=push current chain id onto stack
EVM_OP_SELFBALANCE=balance of executing contract, in wei
EVM_OP_BASEFEE=base fee of current block
EVM_OP_POP=remove item from top of stack and discard it
EVM_OP_MLOAD=read word from memory at offset ost
EVM_OP_MSTORE=write a word to memory
EVM_OP_MSTORE8=write a single byte to memory
EVM_OP_SLOAD=read word from storage
EVM_OP_SSTORE=write word to storage
EVM_OP_JUMP=perform unconditional jump
EVM_OP_JUMPI=perform conditional jump
EVM_OP_PC=program counter
EVM_OP_MSIZE=size of memory in current execution context, in bytes
EVM_OP_GAS=get the amount of available gas
EVM_OP_JUMPDEST=mark valid jump destination
EVM_OP_PUSH1=push 1-byte value onto stack
EVM_OP_PUSH2=push 2-byte value onto stack
EVM_OP_PUSH3=push 3-byte value onto stack
EVM_OP_PUSH4=push 4-byte value onto stack
EVM_OP_PUSH5=push 5-byte value onto stack
EVM_OP_PUSH6=push 6-byte value onto stack
EVM_OP_PUSH7=push 7-byte value onto stack
EVM_OP_PUSH8=push 8-byte value onto stack
EVM_OP_PUSH9=push 9-byte value onto stack
EVM_OP_PUSH10=push 10-byte value onto stack
EVM_OP_PUSH11=push 11-byte value onto stack
EVM_OP_PUSH12=push 12-byte value onto stack
EVM_OP_PUSH13=push 13-byte value onto stack
EVM_OP_PUSH14=push 14-byte value onto stack
EVM_OP_PUSH15=push 15-byte value onto stack
EVM_OP_PUSH16=push 16-byte value onto stack
EVM_OP_PUSH17=push 17-byte value onto stack
EVM_OP_PUSH18=push 18-byte value onto stack
EVM_OP_PUSH19=push 19-byte value onto stack
EVM_OP_PUSH20=push 20-byte value onto stack
EVM_OP_PUSH21=push 21-byte value onto stack
EVM_OP_PUSH22=push 22-byte value onto stack
EVM_OP_PUSH23=push 23-byte value onto stack
EVM_OP_PUSH24=push 24-byte value onto stack
EVM_OP_PUSH25=push 25-byte value onto stack
EVM_OP_PUSH26=push 26-byte value onto stack
EVM_OP_PUSH27=push 27-byte value onto stack
EVM_OP_PUSH28=push 28-byte value onto stack
EVM_OP_PUSH29=push 29-byte value onto stack
EVM_OP_PUSH30=push 30-byte value onto stack
EVM_OP_PUSH31=push 31-byte value onto stack
EVM_OP_PUSH32=push 32-byte value onto stack
EVM_OP_DUP1=clone 1st value on stack
EVM_OP_DUP2=clone 2nd value on stack
EVM_OP_DUP3=clone 3rd value on stack
EVM_OP_DUP4=clone 4th value on stack
EVM_OP_DUP5=clone 5th value on stack
EVM_OP_DUP6=clone 6th value on stack
EVM_OP_DUP7=clone 7th value on stack
EVM_OP_DUP8=clone 8th value on stack
EVM_OP_DUP9=clone 9th value on stack
EVM_OP_DUP10=clone 10th value on stack
EVM_OP_DUP11=clone 11th value on stack
EVM_OP_DUP12=clone 12th value on stack
EVM_OP_DUP13=clone 13th value on stack
EVM_OP_DUP14=clone 14th value on stack
EVM_OP_DUP15=clone 15th value on stack
EVM_OP_DUP16=clone 16th value on stack
EVM_OP_SWAP1=swap 1st and 2nd values on stack
EVM_OP_SWAP2=swap 1st and 3rd values on stack
EVM_OP_SWAP3=swap 1st and 4th values on stack
EVM_OP_SWAP4=swap 1st and 5th values on stack
EVM_OP_SWAP5=swap 1st and 6th values on stack
EVM_OP_SWAP6=swap 1st and 7th values on stack
EVM_OP_SWAP7=swap 1st and 8th values on stack
EVM_OP_SWAP8=swap 1st and 9th values on stack
EVM_OP_SWAP9=swap 1st and 10th values on stack
EVM_OP_SWAP10=swap 1st and 11th values on stack
EVM_OP_SWAP11=swap 1st and 12th values on stack
EVM_OP_SWAP12=swap 1st and 13th values on stack
EVM_OP_SWAP13=swap 1st and 14th values on stack
EVM_OP_SWAP14=swap 1st and 15th values on stack
EVM_OP_SWAP15=swap 1st and 16th values on stack
EVM_OP_SWAP16=swap 1st and 17th values on stack
EVM_OP_LOG0=append log record with no topics
EVM_OP_LOG1=append log record with 1 topic
EVM_OP_LOG2=append log record with 2 topics
EVM_OP_LOG3=append log record with 3 topics
EVM_OP_LOG4=append log record with 4 topics
EVM_OP_CREATE=create a new account with associated code
EVM_OP_CALL=takes 7 values from stack and make a call, push in stack result and stores in memory retuned call data
EVM_OP_CALLCODE=takes 7 values from stack and makes a call to a reciever within self scope without sender values, push in stack result and stores in memory retuned call data
EVM_OP_RETURN=halt execution returning output data
EVM_OP_DELEGATECALL=takes 7 values from stack and makes a call to a reciever within self scope, push in stack result and stores in memory retuned call data
EVM_OP_CREATE2=create a new account with associated code at a predictable address
EVM_OP_STATICCALL=static message-call into an account
EVM_OP_REVERT=halt execution reverting state changes but returning data and remaining gas
EVM_OP_INVALID=designated invalid opcode
EVM_OP_SELFDESTRUCT=halt execution and register account for later deletion
stop=halt execution
add=(u)int256 addition modulo 2**256
mul=(u)int256 multiplication modulo 2**256
sub=(u)int256 addition modulo 2**256
div=uint256 division
sdiv=int256 division
mod=uint256 modulus
smod=int256 modulus
addmod=(u)int256 addition modulo n
mulmod=(u)int256 multiplication modulo n
exp=uint256 exponentiation modulo 2**256
signextend=sign extend x from (b+1) bytes to 32 bytes
lt=uint256 less-than
gt=uint256 greater-than
slt=int256 less-than
sgt=int256 greater-than
eq=(u)int256 equality
iszero=(u)int256 iszero
and=bitwise and
or=bitwise or
xor=bitwise xor
not=bitwise not
byte=retrieve single byte from word
shl=shift left
shr=logical shift right
sar=arithmetic shift right
sha3=compute keccak-256 hash
address=address of executing contract
balance=balance, in wei
origin=address that originated the tx
caller=address of msg sender
callvalue=msg value, in wei
calldataload=read word from msg data at index idx
calldatasize=length of msg data, in bytes
calldatacopy=copy msg data
codesize=length of executing contract's code, in bytes
codecopy=copy executing contract's bytecode
gasprice=gas price of tx, in wei per unit gas
extcodesize=size of code at addr, in bytes
extcodecopy=copy code from addr
returndatasize=size of returned data from last external call, in bytes
returndatacopy=copy returned data from last external call
extcodehash=get hash of an accounts code
blockhash=get the hash of one of the 256 most recent complete blocks
coinbase=address of miner of current block
timestamp=timestamp of current block
number=number of current block
difficulty=difficulty of current block
gaslimit=gas limit of current block
chainid=push current chain id onto stack
selfbalance=balance of executing contract, in wei
basefee=base fee of current block
pop=remove item from top of stack and discard it
mload=read word from memory at offset ost
mstore=write a word to memory
mstore8=write a single byte to memory
sload=read word from storage
sstore=write word to storage
jump=perform unconditional jump
jumpi=perform conditional jump
pc=program counter
msize=size of memory in current execution context, in bytes
gas=get the amount of available gas
jumpdest=mark valid jump destination
push1=push 1-byte value onto stack
push2=push 2-byte value onto stack
push3=push 3-byte value onto stack
push4=push 4-byte value onto stack
push5=push 5-byte value onto stack
push6=push 6-byte value onto stack
push7=push 7-byte value onto stack
push8=push 8-byte value onto stack
push9=push 9-byte value onto stack
push10=push 10-byte value onto stack
push11=push 11-byte value onto stack
push12=push 12-byte value onto stack
push13=push 13-byte value onto stack
push14=push 14-byte value onto stack
push15=push 15-byte value onto stack
push16=push 16-byte value onto stack
push17=push 17-byte value onto stack
push18=push 18-byte value onto stack
push19=push 19-byte value onto stack
push20=push 20-byte value onto stack
push21=push 21-byte value onto stack
push22=push 22-byte value onto stack
push23=push 23-byte value onto stack
push24=push 24-byte value onto stack
push25=push 25-byte value onto stack
push26=push 26-byte value onto stack
push27=push 27-byte value onto stack
push28=push 28-byte value onto stack
push29=push 29-byte value onto stack
push30=push 30-byte value onto stack
push31=push 31-byte value onto stack
push32=push 32-byte value onto stack
dup1=clone 1st value on stack
dup2=clone 2nd value on stack
dup3=clone 3rd value on stack
dup4=clone 4th value on stack
dup5=clone 5th value on stack
dup6=clone 6th value on stack
dup7=clone 7th value on stack
dup8=clone 8th value on stack
dup9=clone 9th value on stack
dup10=clone 10th value on stack
dup11=clone 11th value on stack
dup12=clone 12th value on stack
dup13=clone 13th value on stack
dup14=clone 14th value on stack
dup15=clone 15th value on stack
dup16=clone 16th value on stack
swap1=swap 1st and 2nd values on stack
swap2=swap 1st and 3rd values on stack
swap3=swap 1st and 4th values on stack
swap4=swap 1st and 5th values on stack
swap5=swap 1st and 6th values on stack
swap6=swap 1st and 7th values on stack
swap7=swap 1st and 8th values on stack
swap8=swap 1st and 9th values on stack
swap9=swap 1st and 10th values on stack
swap10=swap 1st and 11th values on stack
swap11=swap 1st and 12th values on stack
swap12=swap 1st and 13th values on stack
swap13=swap 1st and 14th values on stack
swap14=swap 1st and 15th values on stack
swap15=swap 1st and 16th values on stack
swap16=swap 1st and 17th values on stack
log0=append log record with no topics
log1=append log record with 1 topic
log2=append log record with 2 topics
log3=append log record with 3 topics
log4=append log record with 4 topics
create=create a new account with associated code
call=takes 7 values from stack and make a call, push in stack result and stores in memory retuned call data
callcode=takes 7 values from stack and makes a call to a reciever within self scope without sender values, push in stack result and stores in memory retuned call data
return=halt execution returning output data
delegatecall=takes 7 values from stack and makes a call to a reciever within self scope, push in stack result and stores in memory retuned call data
create2=create a new account with associated code at a predictable address
staticcall=static message-call into an account
revert=halt execution reverting state changes but returning data and remaining gas
invalid=designated invalid opcode
selfdestruct=halt execution and register account for later deletion