aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Colvin <greg@colvin.org>2017-08-29 07:40:54 +0800
committerGitHub <noreply@github.com>2017-08-29 07:40:54 +0800
commit21bc6fd3051e2a751767ebd7ac3acaa9ed8ba112 (patch)
treecd40f11b545673675a64f9b8ff70c4f24e7c2841
parentb364bd048ffaf233782a23dabd13622431a75aa3 (diff)
parent7da86daa17a1a3086161de08e71cc26c7ae8bcfc (diff)
downloaddexon-solidity-21bc6fd3051e2a751767ebd7ac3acaa9ed8ba112.tar.gz
dexon-solidity-21bc6fd3051e2a751767ebd7ac3acaa9ed8ba112.tar.zst
dexon-solidity-21bc6fd3051e2a751767ebd7ac3acaa9ed8ba112.zip
Merge pull request #2841 from ethereum/evm15-code-numbers
reconcile evm 1.5 instruction numbers with working draft and client
-rw-r--r--libevmasm/Instruction.h20
1 files changed, 11 insertions, 9 deletions
diff --git a/libevmasm/Instruction.h b/libevmasm/Instruction.h
index 89a25fb7..afbef71d 100644
--- a/libevmasm/Instruction.h
+++ b/libevmasm/Instruction.h
@@ -87,13 +87,6 @@ enum class Instruction: uint8_t
DIFFICULTY, ///< get the block's difficulty
GASLIMIT, ///< get the block's gas limit
- JUMPTO = 0x4a, ///< alter the program counter to a jumpdest -- not part of Instructions.cpp
- JUMPIF, ///< conditionally alter the program counter -- not part of Instructions.cpp
- JUMPV, ///< alter the program counter to a jumpdest -- not part of Instructions.cpp
- JUMPSUB, ///< alter the program counter to a beginsub -- not part of Instructions.cpp
- JUMPSUBV, ///< alter the program counter to a beginsub -- not part of Instructions.cpp
- RETURNSUB, ///< return to subroutine jumped from -- not part of Instructions.cpp
-
POP = 0x50, ///< remove item from stack
MLOAD, ///< load word from memory
MSTORE, ///< save word to memory
@@ -106,8 +99,6 @@ enum class Instruction: uint8_t
MSIZE, ///< get the size of active memory
GAS, ///< get the amount of available gas
JUMPDEST, ///< set a potential jump destination
- BEGINSUB, ///< set a potential jumpsub destination -- not part of Instructions.cpp
- BEGINDATA, ///< begine the data section -- not part of Instructions.cpp
PUSH1 = 0x60, ///< place 1 byte item on stack
PUSH2, ///< place 2 byte item on stack
@@ -182,6 +173,17 @@ enum class Instruction: uint8_t
LOG3, ///< Makes a log entry; 3 topics.
LOG4, ///< Makes a log entry; 4 topics.
+ JUMPTO = 0xb0, ///< alter the program counter to a jumpdest -- not part of Instructions.cpp
+ JUMPIF, ///< conditionally alter the program counter -- not part of Instructions.cpp
+ JUMPV, ///< alter the program counter to a jumpdest -- not part of Instructions.cpp
+ JUMPSUB, ///< alter the program counter to a beginsub -- not part of Instructions.cpp
+ JUMPSUBV, ///< alter the program counter to a beginsub -- not part of Instructions.cpp
+ BEGINSUB, ///< set a potential jumpsub destination -- not part of Instructions.cpp
+ BEGINDATA, ///< begin the data section -- not part of Instructions.cpp
+ RETURNSUB, ///< return to subroutine jumped from -- not part of Instructions.cpp
+ PUTLOCAL, ///< pop top of stack to local variable -- not part of Instructions.cpp
+ GETLOCAL, ///< push local variable to top of stack -- not part of Instructions.cpp
+
CREATE = 0xf0, ///< create a new account with associated code
CALL, ///< message-call into an account
CALLCODE, ///< message-call with another account's code only