-
Notifications
You must be signed in to change notification settings - Fork 310
Implement EIP-7907 #1231
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: devnets/osaka/2
Are you sure you want to change the base?
Implement EIP-7907 #1231
Conversation
Tracking a PR that is looking to make small updates to the EIP |
Nice writeup! One missing piece here is the warm/cold code state as explicitly explained in this PR. |
Pushed a commit e2d1c46 that incorporates changes from the following PRs to the specs. Please have a look
Also, the EIP still needs to explicitly clarify how to handle code that is delegated via 7702. In this implementation, I have assumed that the delegated code is treated with the same warm/cold behaviour but it is best to explicitly spec that out. |
e2d1c46
to
690b3b4
Compare
STACK_DEPTH_LIMIT, | ||
process_create_message, | ||
) | ||
|
||
call_data = memory_read_bytes( | ||
evm.memory, memory_start_position, memory_size | ||
) | ||
if len(call_data) > 2 * MAX_CODE_SIZE: | ||
if len(call_data) > MAX_INIT_CODE_SIZE: | ||
raise OutOfGasError | ||
|
||
create_message_gas = max_message_call_gas(Uint(evm.gas_left)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
L107: wondering if we should add evm.message.warm_code_addresses.add(contract_address)
to account for CREATE* invocations
@@ -86,5 +86,6 @@ def prepare_message( | |||
accessed_addresses=accessed_addresses, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
L71: wondering if we should add warm_code_addresses.add(current_target)
to account for CREATE* addresses and tx.recipient given its considered warm automatically (?)
(closes #1220 )
What was wrong?
EIP-7907 is not implemented on the Osaka branch.
Related to Issue #1220
How was it fixed?
Implement EIP-7907