diff --git a/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetEvmRegistries.java b/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetEvmRegistries.java index ae8cdd0c7f..3775daf76b 100644 --- a/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetEvmRegistries.java +++ b/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetEvmRegistries.java @@ -12,8 +12,6 @@ */ package tech.pegasys.pantheon.ethereum.mainnet; -import static tech.pegasys.pantheon.ethereum.mainnet.MainnetProtocolSpecs.ISTANBUL_ACCOUNT_VERSION; - import tech.pegasys.pantheon.ethereum.core.Account; import tech.pegasys.pantheon.ethereum.vm.EVM; import tech.pegasys.pantheon.ethereum.vm.GasCalculator; @@ -135,7 +133,7 @@ static EVM constantinople(final GasCalculator gasCalculator) { } static EVM istanbul(final GasCalculator gasCalculator, final BigInteger chainId) { - final OperationRegistry registry = new OperationRegistry(2); + final OperationRegistry registry = new OperationRegistry(); registerIstanbulOpcodes(registry, gasCalculator, Account.DEFAULT_VERSION, chainId); @@ -271,14 +269,11 @@ private static void registerIstanbulOpcodes( registry.put( new SStoreOperation(gasCalculator, SStoreOperation.EIP_1706_MINIMUM), Account.DEFAULT_VERSION); - - registerConstantinopleOpcodes(registry, gasCalculator, ISTANBUL_ACCOUNT_VERSION); registry.put( new ChainIdOperation(gasCalculator, Bytes32.leftPad(BytesValue.of(chainId.toByteArray()))), - ISTANBUL_ACCOUNT_VERSION); - registerConstantinopleOpcodes(registry, gasCalculator, ISTANBUL_ACCOUNT_VERSION); + Account.DEFAULT_VERSION); registry.put( new SStoreOperation(gasCalculator, SStoreOperation.EIP_1706_MINIMUM), - MainnetProtocolSpecs.ISTANBUL_ACCOUNT_VERSION); + Account.DEFAULT_VERSION); } } diff --git a/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetPrecompiledContractRegistries.java b/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetPrecompiledContractRegistries.java index 84245f0d2a..98f3c0e44e 100644 --- a/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetPrecompiledContractRegistries.java +++ b/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetPrecompiledContractRegistries.java @@ -12,8 +12,6 @@ */ package tech.pegasys.pantheon.ethereum.mainnet; -import static tech.pegasys.pantheon.ethereum.mainnet.MainnetProtocolSpecs.ISTANBUL_ACCOUNT_VERSION; - import tech.pegasys.pantheon.ethereum.core.Account; import tech.pegasys.pantheon.ethereum.core.Address; import tech.pegasys.pantheon.ethereum.mainnet.precompiles.AltBN128AddPrecompiledContract; @@ -87,21 +85,19 @@ public static PrecompileContractRegistry istanbul( final PrecompileContractRegistry registry = new PrecompileContractRegistry(); populateForByzantium( registry, precompiledContractConfiguration.getGasCalculator(), Account.DEFAULT_VERSION); - populateForByzantium( - registry, precompiledContractConfiguration.getGasCalculator(), ISTANBUL_ACCOUNT_VERSION); registry.put( Address.ALTBN128_ADD, - ISTANBUL_ACCOUNT_VERSION, + Account.DEFAULT_VERSION, AltBN128AddPrecompiledContract.istanbul( precompiledContractConfiguration.getGasCalculator())); registry.put( Address.ALTBN128_MUL, - ISTANBUL_ACCOUNT_VERSION, + Account.DEFAULT_VERSION, AltBN128MulPrecompiledContract.istanbul( precompiledContractConfiguration.getGasCalculator())); registry.put( Address.ALTBN128_PAIRING, - ISTANBUL_ACCOUNT_VERSION, + Account.DEFAULT_VERSION, AltBN128PairingPrecompiledContract.istanbul( precompiledContractConfiguration.getGasCalculator())); diff --git a/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetProtocolSpecs.java b/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetProtocolSpecs.java index ee83880bdd..48dcb606cc 100644 --- a/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetProtocolSpecs.java +++ b/ethereum/core/src/main/java/tech/pegasys/pantheon/ethereum/mainnet/MainnetProtocolSpecs.java @@ -51,8 +51,6 @@ public abstract class MainnetProtocolSpecs { public static final int SPURIOUS_DRAGON_CONTRACT_SIZE_LIMIT = 24576; - public static final int ISTANBUL_ACCOUNT_VERSION = 1; - private static final Address RIPEMD160_PRECOMPILE = Address.fromHexString("0x0000000000000000000000000000000000000003"); @@ -293,7 +291,6 @@ public static ProtocolSpecBuilder istanbulDefinition( final boolean enableRevertReason) { final int contractSizeLimit = configContractSizeLimit.orElse(SPURIOUS_DRAGON_CONTRACT_SIZE_LIMIT); - final int stackSizeLimit = configStackSizeLimit.orElse(DEFAULT_MAX_STACK_SIZE); return constantinopleFixDefinition( chainId, configContractSizeLimit, configStackSizeLimit, enableRevertReason) .gasCalculator(IstanbulGasCalculator::new) @@ -301,34 +298,6 @@ public static ProtocolSpecBuilder istanbulDefinition( gasCalculator -> MainnetEvmRegistries.istanbul(gasCalculator, chainId.orElse(BigInteger.ZERO))) .precompileContractRegistryBuilder(MainnetPrecompiledContractRegistries::istanbul) - .transactionProcessorBuilder( - (gasCalculator, - transactionValidator, - contractCreationProcessor, - messageCallProcessor) -> - new MainnetTransactionProcessor( - gasCalculator, - transactionValidator, - contractCreationProcessor, - messageCallProcessor, - true, - stackSizeLimit, - ISTANBUL_ACCOUNT_VERSION)) - .privateTransactionProcessorBuilder( - (gasCalculator, - transactionValidator, - contractCreationProcessor, - messageCallProcessor, - privateTransactionValidator) -> - new PrivateTransactionProcessor( - gasCalculator, - transactionValidator, - contractCreationProcessor, - messageCallProcessor, - false, - stackSizeLimit, - ISTANBUL_ACCOUNT_VERSION, - privateTransactionValidator)) .contractCreationProcessorBuilder( (gasCalculator, evm) -> new MainnetContractCreationProcessor( @@ -337,8 +306,7 @@ public static ProtocolSpecBuilder istanbulDefinition( true, Collections.singletonList(MaxCodeSizeRule.of(contractSizeLimit)), 1, - SPURIOUS_DRAGON_FORCE_DELETE_WHEN_EMPTY_ADDRESSES, - ISTANBUL_ACCOUNT_VERSION)) + SPURIOUS_DRAGON_FORCE_DELETE_WHEN_EMPTY_ADDRESSES)) .name("Istanbul"); }