[go: up one dir, main page]

Etherlink: support Cancun

Context

This MR contains all the changes needed to support Cancun on Etherlink. There are changes:

  • On Sputnik to extend the handler when necessary and add the low level instructions.
  • On the execution to implement the extended interface of the handler.
  • On the evaluation to activate Cancun tests and skip irrelevant tests.
  • On the kernel to activate Cancun and readapt unit tests to take the new configuration into account.
  • On the CI to enable those tests on the pipeline.

See TODO below to get more informations on what was implemented.

TODO

  • MCOPY EIP-5656.
    • Gasometer
  • TSTORE / TLOAD (transient storage) EIP-1153.
    • Gasometer
  • BLOBHASH EIP-4844 (mock implem. currently, it doens't make sense to support blobs on Etherlink)
  • BLOBBASEFEE EIP-7516 (mock implem. currently, it doens't make sense to support blobs on Etherlink)
  • Readapt SELFDESTRUCT EIP-6780.
  • Bump ethereum/tests to v14.1.
    • New filler files introduced using Pyspec, regenerate the new fillers files on new repository. The fillers are generated thanks to revm!1 and dispatched via !16847 (closed).
    • Update the CI job to clone the latest version of the test-suite (v14.1@etherlink).
  • Reach 100% compatibility with all the new tests.
  • Add a line in the CHANGELOG.

Current status

SUCCESSES IN TOTAL: 19843
FAILURES IN TOTAL: 0
SKIPPED IN TOTAL: 695

Testing

CI already does it, but manually you can do:

./evm-evaluation-assessor --eth-tests <test-suite-repo-path> -o test.logs --resources ./etherlink/kernel_evm/evm_evaluation/resources

The updated test-suite repo can be found here, you have to checkout on v14.1@etherlink.

Edited by Rodi-Can Bozman

Merge request reports

Loading