Skip to content

Commit

Permalink
Reassign opcodes to proposed instructions (#665)
Browse files Browse the repository at this point in the history
Follows the opcode re-assignment of proposed instructions specified in
ethereum/execution-specs#764.
  • Loading branch information
chfast authored Jun 21, 2023
1 parent 94a948f commit 9399750
Show file tree
Hide file tree
Showing 5 changed files with 118 additions and 122 deletions.
5 changes: 2 additions & 3 deletions circle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -455,9 +455,8 @@ jobs:
export EVMONE_PRECOMPILES_STUB=~/project/test/state/precompiles_stub.json
bin/evmone-statetest ~/tests/GeneralStateTests ~/tests/LegacyTests/Constantinople/GeneralStateTests
- download_execution_tests:
repo: ethereum/tests
rev: develop
commit: 0ec53d024c2b1f5175e70aba8f750cd4d37d9999
repo: ipsilon/tests
rev: eof-opcodes-20230619
legacy: false
- run:
name: "State tests (EOF)"
Expand Down
25 changes: 12 additions & 13 deletions lib/evmone/instructions_opcodes.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,8 @@ enum Opcode : uint8_t
OP_MSIZE = 0x59,
OP_GAS = 0x5a,
OP_JUMPDEST = 0x5b,
OP_RJUMP = 0x5c,
OP_RJUMPI = 0x5d,
OP_RJUMPV = 0x5e,

OP_MCOPY = 0x5e,
OP_PUSH0 = 0x5f,
OP_PUSH1 = 0x60,
OP_PUSH2 = 0x61,
Expand Down Expand Up @@ -157,17 +155,18 @@ enum Opcode : uint8_t
OP_LOG3 = 0xa3,
OP_LOG4 = 0xa4,

OP_CALLF = 0xb0,
OP_RETF = 0xb1,
OP_RJUMP = 0xe0,
OP_RJUMPI = 0xe1,
OP_RJUMPV = 0xe2,
OP_CALLF = 0xe3,
OP_RETF = 0xe4,

OP_DUPN = 0xb5,
OP_SWAPN = 0xb6,
OP_MCOPY = 0xb7,

OP_DATALOAD = 0xb8,
OP_DATALOADN = 0xb9,
OP_DATASIZE = 0xba,
OP_DATACOPY = 0xbb,
OP_DUPN = 0xe6,
OP_SWAPN = 0xe7,
OP_DATALOAD = 0xe8,
OP_DATALOADN = 0xe9,
OP_DATASIZE = 0xea,
OP_DATACOPY = 0xeb,

OP_CREATE = 0xf0,
OP_CALL = 0xf1,
Expand Down
46 changes: 23 additions & 23 deletions lib/evmone/instructions_xmacro.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -129,9 +129,9 @@
ON_OPCODE_IDENTIFIER(OP_MSIZE, msize) \
ON_OPCODE_IDENTIFIER(OP_GAS, gas) \
ON_OPCODE_IDENTIFIER(OP_JUMPDEST, jumpdest) \
ON_OPCODE_IDENTIFIER(OP_RJUMP, rjump) \
ON_OPCODE_IDENTIFIER(OP_RJUMPI, rjumpi) \
ON_OPCODE_IDENTIFIER(OP_RJUMPV, rjumpv) \
ON_OPCODE_UNDEFINED(0x5c) \
ON_OPCODE_UNDEFINED(0x5d) \
ON_OPCODE_IDENTIFIER(OP_MCOPY, mcopy) \
ON_OPCODE_IDENTIFIER(OP_PUSH0, push0) \
\
ON_OPCODE_IDENTIFIER(OP_PUSH1, push<1>) \
Expand Down Expand Up @@ -219,18 +219,18 @@
ON_OPCODE_UNDEFINED(0xae) \
ON_OPCODE_UNDEFINED(0xaf) \
\
ON_OPCODE_IDENTIFIER(OP_CALLF, callf) \
ON_OPCODE_IDENTIFIER(OP_RETF, retf) \
ON_OPCODE_UNDEFINED(0xb0) \
ON_OPCODE_UNDEFINED(0xb1) \
ON_OPCODE_UNDEFINED(0xb2) \
ON_OPCODE_UNDEFINED(0xb3) \
ON_OPCODE_UNDEFINED(0xb4) \
ON_OPCODE_IDENTIFIER(OP_DUPN, dupn) \
ON_OPCODE_IDENTIFIER(OP_SWAPN, swapn) \
ON_OPCODE_IDENTIFIER(OP_MCOPY, mcopy) \
ON_OPCODE_IDENTIFIER(OP_DATALOAD, dataload) \
ON_OPCODE_IDENTIFIER(OP_DATALOADN, dataloadn) \
ON_OPCODE_IDENTIFIER(OP_DATASIZE, datasize) \
ON_OPCODE_IDENTIFIER(OP_DATACOPY, datacopy) \
ON_OPCODE_UNDEFINED(0xb5) \
ON_OPCODE_UNDEFINED(0xb6) \
ON_OPCODE_UNDEFINED(0xb7) \
ON_OPCODE_UNDEFINED(0xb8) \
ON_OPCODE_UNDEFINED(0xb9) \
ON_OPCODE_UNDEFINED(0xba) \
ON_OPCODE_UNDEFINED(0xbb) \
ON_OPCODE_UNDEFINED(0xbc) \
ON_OPCODE_UNDEFINED(0xbd) \
ON_OPCODE_UNDEFINED(0xbe) \
Expand Down Expand Up @@ -270,18 +270,18 @@
ON_OPCODE_UNDEFINED(0xde) \
ON_OPCODE_UNDEFINED(0xdf) \
\
ON_OPCODE_UNDEFINED(0xe0) \
ON_OPCODE_UNDEFINED(0xe1) \
ON_OPCODE_UNDEFINED(0xe2) \
ON_OPCODE_UNDEFINED(0xe3) \
ON_OPCODE_UNDEFINED(0xe4) \
ON_OPCODE_IDENTIFIER(OP_RJUMP, rjump) \
ON_OPCODE_IDENTIFIER(OP_RJUMPI, rjumpi) \
ON_OPCODE_IDENTIFIER(OP_RJUMPV, rjumpv) \
ON_OPCODE_IDENTIFIER(OP_CALLF, callf) \
ON_OPCODE_IDENTIFIER(OP_RETF, retf) \
ON_OPCODE_UNDEFINED(0xe5) \
ON_OPCODE_UNDEFINED(0xe6) \
ON_OPCODE_UNDEFINED(0xe7) \
ON_OPCODE_UNDEFINED(0xe8) \
ON_OPCODE_UNDEFINED(0xe9) \
ON_OPCODE_UNDEFINED(0xea) \
ON_OPCODE_UNDEFINED(0xeb) \
ON_OPCODE_IDENTIFIER(OP_DUPN, dupn) \
ON_OPCODE_IDENTIFIER(OP_SWAPN, swapn) \
ON_OPCODE_IDENTIFIER(OP_DATALOAD, dataload) \
ON_OPCODE_IDENTIFIER(OP_DATALOADN, dataloadn) \
ON_OPCODE_IDENTIFIER(OP_DATASIZE, datasize) \
ON_OPCODE_IDENTIFIER(OP_DATACOPY, datacopy) \
ON_OPCODE_UNDEFINED(0xec) \
ON_OPCODE_UNDEFINED(0xed) \
ON_OPCODE_UNDEFINED(0xee) \
Expand Down
Loading

0 comments on commit 9399750

Please sign in to comment.