-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Update EIP-2935: update for Prague devnet1 #8577
Conversation
✅ All reviewers have approved. |
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.
All Reviewers Have Approved; Performing Automatic Merge...
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.
One post-merge nit, LGTM otherwise
|
||
Since now `BLOCKHASH` is served from state, the clients now **additionally** charge the corresponding warm or cold `SLOAD` costs. For verkle based networks this would imply doing and bundling corresponding accesses (and gas charges) of `SLOAD`. | ||
The gas cost of the `BLOCKHASH` opcode is unchanged. Importantly the processing at the beginning of the block, i.e. `process_block_hash_history`, will not warm the `HISTORY_STORAGE_ADDRESS` account or its storage slots as per [EIP-2929](./eip-2929.md) rules. As such the first call to the contract will pay for warming up the account and storage slots it accesses. |
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.
Nit: the first call to the contract is in tx context, not block context.
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.
Is your concern talking about the first call in this section at all? Or rather, how would you clarify this?
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.
"As such the first call to the contract will pay for warming up the account and storage slots it accesses."
It is not super clear that we are talking about the "first call in a tx to the contract" and not "first call in a block to the contract" (it could be misinterpreted). However, anyone with knowledge of EIP2929 will know that this is inside the tx context and not the block context.
So as nit, I would clarify it with "As such the first call within a transaction to the contract"...
See ethereum/EIPs#8577. Also update Prague execution-spec-tests to [devnet-1@v1.0.0](https://github.com/ethereum/execution-spec-tests/releases/tag/devnet-1%40v1.0.0).
See ethereum/EIPs#8577. Also update Prague execution-spec-tests to [devnet-1@v1.0.0](https://github.com/ethereum/execution-spec-tests/releases/tag/devnet-1%40v1.0.0).
This PR makes the following changes to the EIP: