From e4e381d70ac11a8cf10722770d67d40bfb8fa6aa Mon Sep 17 00:00:00 2001 From: lightclient Date: Sun, 15 Dec 2024 21:46:42 -0700 Subject: [PATCH] core/vm: rm dynamic gas calculators for core reading ops --- core/vm/eips.go | 3 --- core/vm/operations_acl.go | 38 -------------------------------------- 2 files changed, 41 deletions(-) diff --git a/core/vm/eips.go b/core/vm/eips.go index 772846f9fe..bb3176b355 100644 --- a/core/vm/eips.go +++ b/core/vm/eips.go @@ -764,15 +764,12 @@ func opExtCodeHashEIP7702(pc *uint64, interpreter *EVMInterpreter, scope *ScopeC func enable7702(jt *JumpTable) { jt[EXTCODECOPY].execute = opExtCodeCopyEIP7702 jt[EXTCODECOPY].constantGas = params.WarmStorageReadCostEIP2929 - jt[EXTCODECOPY].dynamicGas = gasExtCodeCopyEIP7702 jt[EXTCODESIZE].execute = opExtCodeSizeEIP7702 jt[EXTCODESIZE].constantGas = params.WarmStorageReadCostEIP2929 - jt[EXTCODESIZE].dynamicGas = gasEip7702CodeCheck jt[EXTCODEHASH].execute = opExtCodeHashEIP7702 jt[EXTCODEHASH].constantGas = params.WarmStorageReadCostEIP2929 - jt[EXTCODEHASH].dynamicGas = gasEip7702CodeCheck jt[CALL].constantGas = params.WarmStorageReadCostEIP2929 jt[CALL].dynamicGas = gasCallEIP7702 diff --git a/core/vm/operations_acl.go b/core/vm/operations_acl.go index 517fd84637..ff3875868f 100644 --- a/core/vm/operations_acl.go +++ b/core/vm/operations_acl.go @@ -310,41 +310,3 @@ func makeCallVariantGasCallEIP7702(oldCalculator gasFunc) gasFunc { return total, nil } } - -func gasEip7702CodeCheck(evm *EVM, contract *Contract, stack *Stack, mem *Memory, memorySize uint64) (uint64, error) { - cost, _ := gasEip2929AccountCheck(evm, contract, stack, mem, memorySize) - // Check if code is a delegation and if so, charge for resolution - addr := common.Address(stack.peek().Bytes20()) - if addr, ok := types.ParseDelegation(evm.StateDB.GetCode(addr)); ok { - if evm.StateDB.AddressInAccessList(addr) { - cost += params.WarmStorageReadCostEIP2929 - } else { - evm.StateDB.AddAddressToAccessList(addr) - cost += params.ColdAccountAccessCostEIP2929 - } - } - return cost, nil -} - -func gasExtCodeCopyEIP7702(evm *EVM, contract *Contract, stack *Stack, mem *Memory, memorySize uint64) (uint64, error) { - gas, err := gasExtCodeCopyEIP2929(evm, contract, stack, mem, memorySize) - if err != nil { - return 0, err - } - // Check if code is a delegation and if so, charge for resolution - addr := common.Address(stack.peek().Bytes20()) - if addr, ok := types.ParseDelegation(evm.StateDB.GetCode(addr)); ok { - var overflow bool - if evm.StateDB.AddressInAccessList(addr) { - if gas, overflow = math.SafeAdd(gas, params.WarmStorageReadCostEIP2929); overflow { - return 0, ErrGasUintOverflow - } - } else { - evm.StateDB.AddAddressToAccessList(addr) - if gas, overflow = math.SafeAdd(gas, params.ColdAccountAccessCostEIP2929); overflow { - return 0, ErrGasUintOverflow - } - } - } - return gas, nil -}