Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

EOF Implementers Call #6 #705

Closed
lightclient opened this issue Jan 5, 2023 · 5 comments
Closed

EOF Implementers Call #6 #705

lightclient opened this issue Jan 5, 2023 · 5 comments

Comments

@lightclient
Copy link
Member

lightclient commented Jan 5, 2023

(FKA EOF Breakout Room)

Meeting Info

Agenda

  • Client updates
  • Compiler updates
  • Spec updates
    • Remove PC verbiage
    • Support in tracing
    • Initcode argument support
    • Unified EIP?
  • Testing updates
    • Ipsilon updates
    • Parsing and validation test format proposal - with filled tests
    • Fork format going forward - shanghai+eof or cancun or something else?
  • Interop plans
    • Focus on EOF1 vs EOF2
    • Goals before interop
    • Goals after interop
@timbeiko timbeiko added the agenda label Jan 5, 2023
@shemnon
Copy link
Contributor

shemnon commented Jan 7, 2023

EIP-4750 EOF Functions

  • Can we remove the notion of the start of the code section being PC 0? With the removal of the PC operation all PC is relative, and Besu has an optimization where we don't have to slice up the code in the EVM. Change the verbiage to something like this in CALLF
8. Sets `current_section_index` to `code_section_index` and `PC` to the first byte in the code section, and execution continues in the called section.

and remove , and PC is set to 0. from the Execution section. This aligns with making PC unobservable in EOF, clients would be free to set their own mappings.

EIP-3155 EVM trace specification interactions

  • How do we reflect code section in the EIP-3115 format? (PC=0 from the prior section may impact this too, but it could be defined as PC relative to the start of the code section)
  • Do we want to put the return stack items in the trace as an option (like memory)?

@rodiazet
Copy link

Current EIPTests report for evmone and geth. https://hackmd.io/@etgDMnCFQgS7tnZ9yjkOPw/Sk4RrJsco

@chfast
Copy link
Contributor

chfast commented Jan 11, 2023

Spec update: ethereum/EIPs#6261

@lightclient
Copy link
Member Author

A few decisions from the call:

  • Explain everything must be relative if PC=0 is removed.
  • Section always for EOF code, PC relative.
  • Change expected exception from integer to string.
  • Use cancun instead shanghai+eof
  • Need to discuss delegatecall
  • Goals before interop
    • pass all released tests
    • implement reference test runner
    • think about spec changes that still need to be made for EOF1
    • bonus: think about EOF2 (banning most of code introspection) and consider how compatible EOF1 is with that view

@poojaranjan
Copy link
Contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants