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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: EVM Equivalence in Yul #1612

Closed
wants to merge 382 commits into from
Closed

feat: EVM Equivalence in Yul #1612

wants to merge 382 commits into from

Conversation

jrchatruc
Copy link
Contributor

@jrchatruc jrchatruc commented Apr 8, 2024

What ❔

This PR adds an EVM Yul Interpreter on top of the already existing Solidity EVM Interpreter effort, along with units tests for it.

Because there is A LOT of duplicated code between the initCode and the runtime code of the contract, we split it up into different files and used a preprocessor tool to build the final interpreter file.

To preprocess and then compile the interpreter, first install the preprocess tool with

npm install -g preprocess-cli-tool

then run

./recompile_interpreter.sh

on the root of this repo. The resulting binary file will be on

contracts/system-contracts/contracts-preprocessed/artifacts/EvmInterpreterPreprocessed.yul.zbin

Why ❔

Checklist

  • PR title corresponds to the body of PR (we generate changelog entries from PRs).
  • Tests for the changes have been added / updated.
  • Documentation comments have been added / updated.
  • Code has been formatted via zk fmt and zk lint.
  • Spellcheck has been run via zk spellcheck.
  • Linkcheck has been run via zk linkcheck.

@jrchatruc jrchatruc changed the title [WIP] EVM Equivalence in Yul feat: EVM Equivalence in Yul Apr 8, 2024
@jrchatruc jrchatruc marked this pull request as ready for review April 22, 2024 17:54
@jrchatruc jrchatruc changed the base branch from evm-equivalence to main April 25, 2024 14:55
@jrchatruc jrchatruc changed the base branch from main to evm-equivalence April 25, 2024 14:55
@jrchatruc jrchatruc requested a review from a team as a code owner April 26, 2024 20:00
@jrchatruc jrchatruc requested review from yorik, alexandrst88, artmakh, hatemosphere, onyxet and otani88 and removed request for a team April 26, 2024 20:00
jrchatruc and others added 2 commits May 22, 2024 17:01
[EVM-Equivalence-YUL] Tests for exp and selfbalance
@jrchatruc jrchatruc changed the base branch from main to evm-equivalence May 23, 2024 20:19
@jrchatruc jrchatruc changed the base branch from evm-equivalence to main May 23, 2024 20:20
@jrchatruc
Copy link
Contributor Author

Closed in favor of #2852 and subsequent PRs

@jrchatruc jrchatruc closed this Sep 17, 2024
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

Successfully merging this pull request may close these issues.

6 participants