diff --git a/include/evmc/instructions.h b/include/evmc/instructions.h index 1c22f848b..157226a8f 100644 --- a/include/evmc/instructions.h +++ b/include/evmc/instructions.h @@ -165,6 +165,9 @@ enum evmc_opcode OP_LOG3 = 0xa3, OP_LOG4 = 0xa4, + OP_DUPN = 0xb2, + OP_SWAPN = 0xb3, + OP_CREATE = 0xf0, OP_CALL = 0xf1, OP_CALLCODE = 0xf2, diff --git a/lib/instructions/instruction_metrics.c b/lib/instructions/instruction_metrics.c index 059ba76f0..7c1f35137 100644 --- a/lib/instructions/instruction_metrics.c +++ b/lib/instructions/instruction_metrics.c @@ -213,8 +213,8 @@ static struct evmc_instruction_metrics cancun_metrics[256] = { /* = 0xaf */ {UNDEFINED, 0, 0}, /* = 0xb0 */ {UNDEFINED, 0, 0}, /* = 0xb1 */ {UNDEFINED, 0, 0}, - /* = 0xb2 */ {UNDEFINED, 0, 0}, - /* = 0xb3 */ {UNDEFINED, 0, 0}, + /* DUPN = 0xb2 */ {VERYLOW, 0, 1}, + /* SWAPN = 0xb3 */ {VERYLOW, 0, 0}, /* = 0xb4 */ {UNDEFINED, 0, 0}, /* = 0xb5 */ {UNDEFINED, 0, 0}, /* = 0xb6 */ {UNDEFINED, 0, 0}, diff --git a/lib/instructions/instruction_names.c b/lib/instructions/instruction_names.c index 64a21592d..6e21f0af9 100644 --- a/lib/instructions/instruction_names.c +++ b/lib/instructions/instruction_names.c @@ -183,8 +183,8 @@ static const char* cancun_names[256] = { /* 0xaf */ NULL, /* 0xb0 */ NULL, /* 0xb1 */ NULL, - /* 0xb2 */ NULL, - /* 0xb3 */ NULL, + /* 0xb2 */ "DUPN", + /* 0xb3 */ "SWAPN", /* 0xb4 */ NULL, /* 0xb5 */ NULL, /* 0xb6 */ NULL,