Fix return and revert gas (#1058)

This commit is contained in:
wborgeaud 2023-05-25 16:47:55 +02:00 committed by GitHub
parent 42f3301730
commit 7dfdacf247
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -16,8 +16,13 @@ global sys_return:
%stack (kexit_info, offset, size) -> (offset, size, kexit_info, offset, size)
%add_or_fault
DUP1 %ensure_reasonable_offset
// stack: offset+size, kexit_info, offset, size
DUP4 ISZERO %jumpi(return_zero_size)
%update_mem_bytes
%jump(return_after_gas)
return_zero_size:
POP
return_after_gas:
// Load the parent's context.
%mload_context_metadata(@CTX_METADATA_PARENT_CONTEXT)
@ -115,6 +120,13 @@ global sys_revert:
%stack (kexit_info, offset, size) -> (offset, size, kexit_info, offset, size)
%add_or_fault
DUP1 %ensure_reasonable_offset
// stack: offset+size, kexit_info, offset, size
DUP4 ISZERO %jumpi(revert_zero_size)
%update_mem_bytes
%jump(revert_after_gas)
revert_zero_size:
POP
revert_after_gas:
%update_mem_bytes
// Load the parent's context.