diff options
author | Dimitry <winsvega@mail.ru> | 2017-06-08 22:44:03 +0800 |
---|---|---|
committer | chriseth <chris@ethereum.org> | 2017-06-15 00:18:12 +0800 |
commit | c20cdd0a0574c350b5cde7b38e87321479cecab3 (patch) | |
tree | 5e7bc76cba1ec47124eb3bba453a2c994c0d766a /libevmasm/Instruction.h | |
parent | d693822a6fce5d1c853e50f4c7758bc003542644 (diff) | |
download | dexon-solidity-c20cdd0a0574c350b5cde7b38e87321479cecab3.tar.gz dexon-solidity-c20cdd0a0574c350b5cde7b38e87321479cecab3.tar.zst dexon-solidity-c20cdd0a0574c350b5cde7b38e87321479cecab3.zip |
add new opcode instructions to the parser
STATICCALL 0xfa 6 inputs (gas address mem1 mem2 mem3 mem4)
Diffstat (limited to 'libevmasm/Instruction.h')
-rw-r--r-- | libevmasm/Instruction.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libevmasm/Instruction.h b/libevmasm/Instruction.h index 37cdccdb..89a25fb7 100644 --- a/libevmasm/Instruction.h +++ b/libevmasm/Instruction.h @@ -77,8 +77,8 @@ enum class Instruction: uint8_t GASPRICE, ///< get price of gas in current environment EXTCODESIZE, ///< get external code size (from another contract) EXTCODECOPY, ///< copy external code (from another contract) - RETURNDATASIZE, ///< get size of the last return data - RETURNDATACOPY, ///< copy last return data to memory + RETURNDATASIZE = 0x3d, ///< get size of return data buffer + RETURNDATACOPY = 0x3e, ///< copy return data in current environment to memory BLOCKHASH = 0x40, ///< get hash of most recent complete block COINBASE, ///< get the block's coinbase address @@ -187,7 +187,8 @@ enum class Instruction: uint8_t CALLCODE, ///< message-call with another account's code only RETURN, ///< halt execution returning output data DELEGATECALL, ///< like CALLCODE but keeps caller's value and sender - CREATE2 = 0xfb, ///< create new account with associated code + STATICCALL = 0xfa, ///< like CALL but disallow state modifications + CREATE2 = 0xfb, ///< create new account with associated code at address `sha3(sender + salt + sha3(init code)) % 2**160` REVERT = 0xfd, ///< halt execution, revert state and return output data INVALID = 0xfe, ///< invalid instruction for expressing runtime errors (e.g., division-by-zero) |