diff --git a/evm/src/cpu/kernel/asm/core/call.asm b/evm/src/cpu/kernel/asm/core/call.asm index 41662c5f..af5ab319 100644 --- a/evm/src/cpu/kernel/asm/core/call.asm +++ b/evm/src/cpu/kernel/asm/core/call.asm @@ -22,12 +22,12 @@ global sys_call: // stack: address, gas, kexit_info, value, args_offset, args_size, ret_offset, ret_size %u256_to_addr // Truncate to 160 bits DUP1 %insert_accessed_addresses - DUP2 %insert_touched_addresses %call_charge_gas(1, 1) %check_depth %checkpoint // Checkpoint + DUP3 %insert_touched_addresses %create_context // stack: new_ctx, kexit_info, callgas, address, value, args_offset, args_size, ret_offset, ret_size @@ -80,6 +80,7 @@ global sys_callcode: %check_depth %checkpoint // Checkpoint + %address %insert_touched_addresses // stack: kexit_info, callgas, address, value, args_offset, args_size, ret_offset, ret_size %create_context @@ -130,7 +131,6 @@ global sys_staticcall: // stack: address, gas, kexit_info, args_offset, args_size, ret_offset, ret_size %u256_to_addr // Truncate to 160 bits DUP1 %insert_accessed_addresses - DUP2 %insert_touched_addresses // Add a value of 0 to the stack. Slightly inefficient but that way we can reuse %call_charge_gas. %stack (cold_access, address, gas, kexit_info) -> (cold_access, address, gas, kexit_info, 0) @@ -138,6 +138,7 @@ global sys_staticcall: %check_depth %checkpoint // Checkpoint + DUP3 %insert_touched_addresses // stack: kexit_info, callgas, address, value, args_offset, args_size, ret_offset, ret_size %create_context @@ -192,6 +193,7 @@ global sys_delegatecall: %check_depth %checkpoint // Checkpoint + %address %insert_touched_addresses // stack: kexit_info, callgas, address, value, args_offset, args_size, ret_offset, ret_size %create_context