Skip to content
This repository was archived by the owner on Apr 18, 2025. It is now read-only.

feat: implement access list address and storage key lookups in copy circuit (EIP-2930)#1058

Merged
lispc merged 12 commits into
developfrom
eip-2930-copy-circuit
Dec 11, 2023
Merged

feat: implement access list address and storage key lookups in copy circuit (EIP-2930)#1058
lispc merged 12 commits into
developfrom
eip-2930-copy-circuit

Conversation

@silathdiir
Copy link
Copy Markdown

@silathdiir silathdiir commented Dec 7, 2023

Summary

  • Add access_list to CopyEvent, and assign access list address to value and storage key to value_prev of copy table, and assign addr to index of tx table.

  • Add both access list address and storage key copy events in begin-tx.

  • In copy circuit, for access list do TX lookups as read steps, and RW lookups as write steps. Since there is no real bytes to copy, the copy bytes is just intialized to create read and write steps, and no word alignment (as other copy data type).

  • Only enable RW lookups in copy circuit for now, just comment out TX lookups to wait for merging this EIP-1559 PR which implements tx table load for access list.

Test

TODO

  • I will create another PR to enable TX lookups in copy circuit after merging EIP-1559 PR.

Asana

Copy link
Copy Markdown

@roynalnaruto roynalnaruto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick suggestions. And some refactoring suggestions. Will wait for further updates before doing another round of review :)

Comment thread bus-mapping/src/circuit_input_builder/execution.rs
Comment thread bus-mapping/src/evm/opcodes/begin_end_tx.rs Outdated
Comment thread bus-mapping/src/evm/opcodes/begin_end_tx.rs Outdated
Comment thread bus-mapping/src/evm/opcodes/callop.rs Outdated
@silathdiir silathdiir changed the title [WIP] Implement access list address and storage key lookups in copy circuit (EIP-2930) feat: Implement access list address and storage key lookups in copy circuit (EIP-2930) Dec 10, 2023
@silathdiir silathdiir changed the title feat: Implement access list address and storage key lookups in copy circuit (EIP-2930) feat: implement access list address and storage key lookups in copy circuit (EIP-2930) Dec 10, 2023
…::default()` with `access_list: vec![]` in call places.
Copy link
Copy Markdown

@roynalnaruto roynalnaruto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

Comment thread bus-mapping/src/evm/opcodes/begin_end_tx.rs Outdated
@lispc lispc merged commit 10b7e64 into develop Dec 11, 2023
@lispc lispc deleted the eip-2930-copy-circuit branch December 11, 2023 11:16
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants