-
Notifications
You must be signed in to change notification settings - Fork 10
feat(evm): bump reth to v2.4.0 and support revmc JIT execution #222
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
Open
davidtaikocha
wants to merge
29
commits into
main
Choose a base branch
from
feat/reth-v2.4.0-jit
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 16 commits
Commits
Show all changes
29 commits
Select commit
Hold shift + click to select a range
3493ac7
docs: add reth v2.4.0 + JIT design note (working doc, drop before PR)
davidtaikocha 65f8b6d
chore(deps): bump reth to v2.4.0, vendor reth-optimism-trie, toolchai…
davidtaikocha 264ea09
fix: migrate primitives/evm/consensus to reth v2.4.0 APIs
davidtaikocha 85830e1
fix: migrate block/payload/rpc/node/cli to reth v2.4.0 APIs
davidtaikocha 9d6880d
fix: migrate tests and prover paths to reth v2.4.0 APIs
davidtaikocha 516b708
feat(evm): support revmc JIT execution on reth v2.4.0
davidtaikocha b5bcc8f
chore: clippy msrv 1.95, vendor lint fixes, docs refresh; drop workin…
davidtaikocha 31adb60
refactor: simplify reth v2.4.0/JIT branch diff
davidtaikocha 7e70482
fix(evm): restore pre-2.4.0 zk gas charging for OOG-halting steps
davidtaikocha 5aa1746
chore: vendored MIT notice, LLVM script hardening, BAL tripwire, doc …
davidtaikocha 0402ca0
fix(cli): honor --jit on the re-execute command
davidtaikocha ba1f3c1
docs: exempt vendor/** from the mandatory documentation policy
davidtaikocha 057c363
build(deps): un-vendor reth-optimism-trie, bump reth to f2eecc6
davidtaikocha 796f2b3
build(deps): bump revmc to 520462a4, reth f2eecc6's locked revision
davidtaikocha d37f57b
fix(cli): honor JIT debug dumps on re-execute
42b26ae
refactor: simplify consensus error helper and live-collector test fix…
davidtaikocha 0dc7866
build(deps): pin reth-optimism-trie to OP #21766's merge commit
davidtaikocha 7f50977
fix(node): migrate legacy proof-history databases and survive boundar…
davidtaikocha 5de2772
Merge remote-tracking branch 'origin/main' into feat/reth-v2.4.0-jit
davidtaikocha 25fd647
build: regenerate Cargo.lock for the 1.3.0 workspace version
davidtaikocha e71e8f1
fix(node): keep --jit.blocking from enabling JIT on its own
davidtaikocha 27170a2
fix(payload): fail closed when the Amsterdam fork is active
davidtaikocha b98ef6a
fix(consensus): reject Amsterdam headers and EIP-7928 fields at import
davidtaikocha 0b29488
fix(evm): finalize the journal when transaction execution errors
davidtaikocha ab46614
fix(rpc): reject unsupported engine fields
543e4f1
fix(node): require collected blocks to extend the stored proof-histor…
davidtaikocha bdfe424
docs(block): state the pre-checked-result invariant on commit_transac…
davidtaikocha 64be05c
ci(repo): fail CI when Cargo.lock resolves multiple reth revisions
davidtaikocha d4d6c01
docs(repo): mark the LLVM installer as CI/Docker-only provisioning
davidtaikocha File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| #!/usr/bin/env bash | ||
| set -eo pipefail | ||
|
|
||
| os=${1:?usage: install_llvm.sh <ubuntu> [version]} | ||
| version=${2:-22} | ||
| script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" | ||
|
|
||
| case "$os" in | ||
| ubuntu) | ||
| sudo "$script_dir/install_llvm_ubuntu.sh" "$version" | ||
| ;; | ||
| *) | ||
| echo "unsupported OS: $os" >&2 | ||
| exit 1 | ||
| ;; | ||
| esac |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| #!/usr/bin/env bash | ||
| set -eo pipefail | ||
|
|
||
| version=${1:-22} | ||
| bins=(clang llvm-config lld ld.lld FileCheck) | ||
|
|
||
| # The official installer needs this package on Debian bookworm but not on newer distributions. | ||
| apt-get update -qq | ||
| apt-get install -y --no-install-recommends \ | ||
| lsb-release wget gnupg ca-certificates | ||
| apt-get install -y --no-install-recommends software-properties-common 2>/dev/null || true | ||
|
|
||
| llvm_installer=$(mktemp) | ||
| wget -qO "$llvm_installer" https://apt.llvm.org/llvm.sh | ||
| # Pin the upstream installer so CI and Docker builds fail loudly when it changes; review the new | ||
| # script before updating this hash. | ||
| echo "9474ecd78b52aba6e923976b1e9773f5613027cc7e237b9956986cb536e02a36 $llvm_installer" | sha256sum -c - | ||
| chmod +x "$llvm_installer" | ||
| "$llvm_installer" "$version" all | ||
| rm -f "$llvm_installer" | ||
|
|
||
| for bin in "${bins[@]}"; do | ||
| if ! command -v "$bin-$version" &>/dev/null; then | ||
| echo "Error: $bin-$version not found after install" >&2 | ||
| exit 1 | ||
| fi | ||
| ln -fs "$(command -v "$bin-$version")" "/usr/bin/$bin" | ||
| done | ||
|
|
||
| echo "LLVM $version installed:" | ||
| llvm-config --version | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.