From c20cdd0a0574c350b5cde7b38e87321479cecab3 Mon Sep 17 00:00:00 2001 From: Dimitry Date: Thu, 8 Jun 2017 17:44:03 +0300 Subject: add new opcode instructions to the parser STATICCALL 0xfa 6 inputs (gas address mem1 mem2 mem3 mem4) --- libevmasm/Instruction.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'libevmasm/Instruction.h') 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) -- cgit