 |
Ethereum
PoC-8
The C++ Implementation of Ethereum
|
@ PUSH9
place 9 byte item on stack
@ XSHR
shift right opertation
@ JUMPCI
conditionally alter the program counter - pre-verified
@ XSHL
shift left opertation
@ LOG0
Makes a log entry; no topics.
@ LOG3
Makes a log entry; 3 topics.
@ LOG4
Makes a log entry; 4 topics.
@ ADDRESS
get address of currently executing account
@ DIFFICULTY
get the block's difficulty
@ PUSH3
place 3 byte item on stack
@ DUP16
copies the 16th highest item in the stack to the top of the stack
@ SLOAD
load word from storage
@ XSHUFFLE
permute data in two vectors
@ PUSH8
place 8 byte item on stack
@ XMLOAD
load vector from memory
@ PUSH29
place 29 byte item on stack
@ DUP10
copies the 10th highest item in the stack to the top of the stack
@ SWAP7
swaps the highest and 8th highest value on the stack
@ SIGNEXTEND
extend length of signed integer
@ CREATE
create a new account with associated code
@ POP
remove item from stack
@ CALLER
get caller address
@ XOR
bitwise XOR operation
@ PUSH15
place 15 byte item on stack
@ RETURNDATACOPY
copy data returned from previous call to memory
@ JUMPV
alter the program counter to a jumpdest
@ DELEGATECALL
like CALLCODE but keeps caller's value and sender
@ SSTORE
save word to storage
@ SWAP15
swaps the highest and 16th highest value on the stack
@ LT
less-than comparision
@ PUSH18
place 18 byte item on stack
@ DUP11
copies the 11th highest item in the stack to the top of the stack
@ XROR
rotate right opertation
@ RETURN
halt execution returning output data
@ XLT
less-than comparision
@ XXOR
bitwise XOR operation
@ PUSH11
place 11 byte item on stack
@ AND
bitwise AND operation
@ LOG1
Makes a log entry; 1 topic.
@ SWAP13
swaps the highest and 14th highest value on the stack
@ SAR
arithmetic shift right operation
@ PUSH10
place 10 byte item on stack
@ PUSHC
push value from constant pool
@ PUSH21
place 21 byte item on stack
@ XMOD
modulo remainder operation
int const ret
Number of items placed (back) on the stack by this instruction, assuming args items were removed.
@ XSMOD
signed modulo remainder operation
@ XSGT
signed greater-than comparision
@ BALANCE
get balance of the given account
@ PUSH32
place 32 byte item on stack
@ DUP1
copies the highest item in the stack to the top of the stack
@ CALLCODE
message-call with another account's code only
@ PUSH22
place 22 byte item on stack
@ SWAP9
swaps the highest and 10th highest value on the stack
@ SUB
subtraction operation
@ DUP8
copies the 8th highest item in the stack to the top of the stack
@ MLOAD
load word from memory
@ SHR
logical shift right operation
@ XAND
bitwise AND operation
@ CALLDATACOPY
copy input data in current environment to memory
@ PUSH28
place 28 byte item on stack
@ RETURNSUB
return to subroutine jumped from
int const args
Number of items required on the stack for this instruction (and, for the purposes of ret,...
@ SWAP11
swaps the highest and 12th highest value on the stack
@ MOD
modulo remainder operation
@ JUMP
alter the program counter to a jumpdest
@ PUSH24
place 24 byte item on stack
@ XSSTORE
save vector to storage
@ SWAP1
swaps the highest and second highest value on the stack
@ SWAP4
swaps the highest and 5th highest value on the stack
@ SMOD
signed modulo remainder operation
@ MUL
mulitplication operation
@ DUP12
copies the 12th highest item in the stack to the top of the stack
@ DUP7
copies the 7th highest item in the stack to the top of the stack
@ XGT
greater-than comparision
@ DUP5
copies the 5th highest item in the stack to the top of the stack
@ SUICIDE
halt execution and register account for later deletion
@ XWIDETOV
convert wide integer to vector
@ GAS
get the amount of available gas
@ PUSH19
place 19 byte item on stack
@ SWAP14
swaps the highest and 15th highest value on the stack
@ XPUSH
push vector to stack
@ XGET
get data from vector
@ PUSH27
place 27 byte item on stack
@ JUMPI
conditionally alter the program counter
@ SWAP8
swaps the highest and 9th highest value on the stack
@ XMSTORE
save vector to memory
@ PUSH4
place 4 byte item on stack
@ SWAP6
swaps the highest and 7th highest value on the stack
Information structure for a particular instruction.
@ SWAP5
swaps the highest and 6th highest value on the stack
@ INVALID
dedicated invalid instruction
@ XMUL
mulitplication operation
@ JUMPC
alter the program counter - pre-verified
@ MSTORE
save word to memory
@ XROL
rotate left opertation
@ DUP6
copies the 6th highest item in the stack to the top of the stack
@ JUMPTO
alter the program counter to a jumpdest
@ PUSH25
place 25 byte item on stack
@ LOG2
Makes a log entry; 2 topics.
@ SDIV
signed integer division operation
@ PUSH7
place 7 byte item on stack
@ COINBASE
get the block's coinbase address
@ BEGINSUB
set a potential jumpsub destination
@ XSLT
signed less-than comparision
@ DIV
integer division operation
@ SWAP3
swaps the highest and 4th highest value on the stack
@ GT
greater-than comparision
@ ISZERO
simple not operator
@ NOT
bitwise NOT operation
@ PUSH14
place 14 byte item on stack
@ PUSH30
place 30 byte item on stack
Tier const gasPriceTier
Tier for gas pricing.
@ PUSH12
place 12 byte item on stack
@ CALL
message-call into an account
@ XSDIV
signed integer division operation
@ BEGINDATA
begine the data section
char const *const name
The name of the instruction.
@ XEQ
equality comparision
@ BLOCKHASH
get hash of most recent complete block
Instruction
Virtual machine bytecode instruction.
@ EXTCODESIZE
get external code size (from another contract)
@ XSWIZZLE
permute data in vector
@ DUP9
copies the 9th highest item in the stack to the top of the stack
@ ADDMOD
unsigned modular addition
@ REVERT
stop execution and revert state changes, without consuming all provided gas
@ XSAR
shift arithmetic right opertation
@ CALLDATALOAD
get input data of current environment
@ PUSH20
place 20 byte item on stack
@ XNOT
bitwise NOT opertation
@ PUSH26
place 26 byte item on stack
@ SHL
logical shift left operation
@ EXP
exponential operation
@ PUSH5
place 5 byte item on stack
@ SGT
signed greater-than comparision
@ DUP14
copies the 14th highest item in the stack to the top of the stack
@ PUSH2
place 2 byte item on stack
@ SWAP10
swaps the highest and 11th highest value on the stack
@ SWAP12
swaps the highest and 13th highest value on the stack
@ SWAP2
swaps the highest and third highest value on the stack
@ PUSH13
place 13 byte item on stack
@ NUMBER
get the block's number
@ XSUB
subtraction operation
@ CALLDATASIZE
get size of input data in current environment
@ PUSH1
place 1 byte item on stack
@ CODESIZE
get size of code running in current environment
@ XISZERO
simple not operator
@ MULMOD
unsigned modular multiplication
@ XSLOAD
load vector from storage
@ BYTE
retrieve single byte from word
@ DUP13
copies the 13th highest item in the stack to the top of the stack
@ PUSH31
place 31 byte item on stack
@ GASPRICE
get price of gas in current environment
@ DUP2
copies the second highest item in the stack to the top of the stack
@ TIMESTAMP
get the block's timestamp
@ ORIGIN
get execution origination address
@ CODECOPY
copy code running in current environment to memory
@ PUSH17
place 17 byte item on stack
@ SHA3
compute SHA3-256 hash
@ DUP3
copies the third highest item in the stack to the top of the stack
InstructionInfo instructionInfo(Instruction _inst)
Information on all the instructions.
@ XVTOWIDE
convert vector to wide integer
@ JUMPSUBV
alter the program counter to a beginsub
@ MSTORE8
save byte to memory
@ RETURNDATASIZE
size of data returned from previous call
@ PUSH23
place 23 byte item on stack
@ EXTCODEHASH
get external code hash
@ PUSH16
place 16 byte item on stack
@ JUMPIF
conditionally alter the program counter
@ PUSH6
place 6 byte item on stack
@ MSIZE
get the size of active memory
@ XDIV
integer division operation
@ JUMPDEST
set a potential jump destination
@ GASLIMIT
get the block's gas limit
@ SWAP16
swaps the highest and 17th highest value on the stack
@ PUTLOCAL
pop top of stack to local variable
@ DUP4
copies the 4th highest item in the stack to the top of the stack
@ XOOR
bitwise OR operation
@ EXTCODECOPY
copy external code (from another contract)
@ JUMPSUB
alter the program counter to a beginsub
@ GETLOCAL
push local variable to top of stack
@ SLT
signed less-than comparision
@ CREATE2
create a new account with associated code. sha3((sender + salt + code)
@ PC
get the program counter
@ DUP15
copies the 15th highest item in the stack to the top of the stack