From b3920abc9a22a067ae966eebfae6079c5d9fb0f2 Mon Sep 17 00:00:00 2001 From: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com> Date: Sat, 8 Jun 2024 17:01:33 +0800 Subject: [PATCH] feat: skip `RANDOM` & `PREVRANDAO` opcodes (#811) fix opRandom --- core/vm/jump_table.go | 12 ++++++------ core/vm/opcodes.go | 15 ++++++++------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/core/vm/jump_table.go b/core/vm/jump_table.go index 2acd7b3e31..7a4abccb4f 100644 --- a/core/vm/jump_table.go +++ b/core/vm/jump_table.go @@ -120,12 +120,12 @@ func newShanghaiInstructionSet() JumpTable { func newMergeInstructionSet() JumpTable { instructionSet := newLondonInstructionSet() - instructionSet[PREVRANDAO] = &operation{ - execute: opRandom, - constantGas: GasQuickStep, - minStack: minStack(0, 1), - maxStack: maxStack(0, 1), - } + // instructionSet[PREVRANDAO] = &operation{ + // execute: opRandom, + // constantGas: GasQuickStep, + // minStack: minStack(0, 1), + // maxStack: maxStack(0, 1), + // } return validate(instructionSet) } diff --git a/core/vm/opcodes.go b/core/vm/opcodes.go index 9ab04642e3..0a3cdd62eb 100644 --- a/core/vm/opcodes.go +++ b/core/vm/opcodes.go @@ -89,13 +89,14 @@ const ( // 0x40 range - block operations. const ( - BLOCKHASH OpCode = 0x40 - COINBASE OpCode = 0x41 - TIMESTAMP OpCode = 0x42 - NUMBER OpCode = 0x43 - DIFFICULTY OpCode = 0x44 - RANDOM OpCode = 0x44 // Same as DIFFICULTY - PREVRANDAO OpCode = 0x44 // Same as DIFFICULTY + BLOCKHASH OpCode = 0x40 + COINBASE OpCode = 0x41 + TIMESTAMP OpCode = 0x42 + NUMBER OpCode = 0x43 + DIFFICULTY OpCode = 0x44 + // RANDOM & PREVRANDAO are not supported in scroll + // RANDOM OpCode = 0x44 // Same as DIFFICULTY + // PREVRANDAO OpCode = 0x44 // Same as DIFFICULTY GASLIMIT OpCode = 0x45 CHAINID OpCode = 0x46 SELFBALANCE OpCode = 0x47