Warm precompiles earlier (#1065)

This commit is contained in:
wborgeaud 2023-06-02 19:57:30 +02:00 committed by GitHub
parent f605d912a5
commit fbf6591b2d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -82,6 +82,18 @@ global increment_sender_nonce:
%mload_txn_field(@TXN_FIELD_ORIGIN) %mload_txn_field(@TXN_FIELD_ORIGIN)
%increment_nonce %increment_nonce
global warm_precompiles:
// Add precompiles to accessed addresses.
PUSH @ECREC %insert_accessed_addresses_no_return
PUSH @SHA256 %insert_accessed_addresses_no_return
PUSH @RIP160 %insert_accessed_addresses_no_return
PUSH @ID %insert_accessed_addresses_no_return
PUSH @EXPMOD %insert_accessed_addresses_no_return
PUSH @BN_ADD %insert_accessed_addresses_no_return
PUSH @BN_MUL %insert_accessed_addresses_no_return
PUSH @SNARKV %insert_accessed_addresses_no_return
PUSH @BLAKE2_F %insert_accessed_addresses_no_return
// EIP-3651 // EIP-3651
global warm_coinbase: global warm_coinbase:
%mload_global_metadata(@GLOBAL_METADATA_BLOCK_BENEFICIARY) %mload_global_metadata(@GLOBAL_METADATA_BLOCK_BENEFICIARY)
@ -224,17 +236,6 @@ global process_message_txn:
// stack: code_empty, retdest // stack: code_empty, retdest
%jumpi(process_message_txn_return) %jumpi(process_message_txn_return)
// Add precompiles to accessed addresses.
PUSH @ECREC %insert_accessed_addresses_no_return
PUSH @SHA256 %insert_accessed_addresses_no_return
PUSH @RIP160 %insert_accessed_addresses_no_return
PUSH @ID %insert_accessed_addresses_no_return
PUSH @EXPMOD %insert_accessed_addresses_no_return
PUSH @BN_ADD %insert_accessed_addresses_no_return
PUSH @BN_MUL %insert_accessed_addresses_no_return
PUSH @SNARKV %insert_accessed_addresses_no_return
PUSH @BLAKE2_F %insert_accessed_addresses_no_return
// Otherwise, load to's code and execute it in a new context. // Otherwise, load to's code and execute it in a new context.
// stack: retdest // stack: retdest
%create_context %create_context