diff --git a/core/vm/evm.go b/core/vm/evm.go index 1ec4e2e5e4..20147d33ae 100644 --- a/core/vm/evm.go +++ b/core/vm/evm.go @@ -58,7 +58,7 @@ func (evm *EVM) precompile(addr common.Address) (PrecompiledContract, bool) { p, ok := precompiles[addr] // Restrict overrides to known precompiles if ok && evm.chainConfig.IsOptimism() && evm.Config.OptimismPrecompileOverrides != nil { - override, ok := evm.Config.OptimismPrecompileOverrides(evm.chainRules, addr) + override, ok := evm.Config.OptimismPrecompileOverrides(evm.chainRules, p, addr) if ok { return override, ok } diff --git a/core/vm/interpreter.go b/core/vm/interpreter.go index 25d97e2a08..dc5d5fbecc 100644 --- a/core/vm/interpreter.go +++ b/core/vm/interpreter.go @@ -25,7 +25,7 @@ import ( ) // PrecompileOverrides is a function that can be used to override the default precompiled contracts -type PrecompileOverrides func(params.Rules, common.Address) (PrecompiledContract, bool) +type PrecompileOverrides func(params.Rules, PrecompiledContract, common.Address) (PrecompiledContract, bool) // Config are the configuration options for the Interpreter type Config struct {