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: tweeks for v4.0 revm release #1048

Merged
merged 23 commits into from
Feb 5, 2024
Merged

feat: tweeks for v4.0 revm release #1048

merged 23 commits into from
Feb 5, 2024

Conversation

rakita
Copy link
Member

@rakita rakita commented Feb 3, 2024

A lot of small tweaks:

  • CallOutcome/CreateOucome/InterpreterResult got Eq and PartialEq,
  • cfg.optimism field removed.
  • Validation checks for optimism moved to the optimism handler.
  • CfgEnvWithSpecId/EnvWithSpecId added to help with the transition as spec_id is removed from CfgEnv
  • optimism_default_handler default feature added that will make Optimism a default Handler in EvmBuilder additionally enabled mainnet() and reset_handler_with_mainnet() functions so mainnet can be used with the Optimism feature and enabled Optimism feature by default.
  • modify_env now takes Box<Env> (previously it was just Env)
  • GetInspector implemented on all Inspector by default. And it loses its lifetime from the trait.
  • is_optimism added to Handler and to EvnWithSpecId/CfgEnvWithSpecId so it is easier to integrate new revm.
  • Added optimism_default_handler to add optimism handler register by default always. And negate_optimism_default_handler to negate it for when tests are called with --all-features.
  • Moved some optimism tests to handle register file.
  • Introduce HandlerCfg and Rename EvnWithSpecId/CfgEnvWithSpecId to EvnWithHandlerCfg/CfgEnvWithHandlerCfg

@rakita rakita changed the title feat: Tweeks feat: tweeks for v4.0 revm release Feb 3, 2024
Copy link
Contributor

github-actions bot commented Feb 4, 2024

Valgrind Results:

==4001== Cachegrind, a cache and branch-prediction profiler
==4001== Copyright (C) 2002-2017, and GNU GPL'd, by Nicholas Nethercote et al.
==4001== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
==4001== Command: target/release/snailtracer
==4001== 
--4001-- warning: L3 cache found, using its data for the LL simulation.
Snailtracer Host+Interpreter benchmark (2.0s) ...            not enough samples
==4001== 
==4001== I   refs:      463,562,044
==4001== I1  misses:          3,506
==4001== LLi misses:          2,900
==4001== I1  miss rate:        0.00%
==4001== LLi miss rate:        0.00%
==4001== 
==4001== D   refs:      237,388,458  (160,564,994 rd   + 76,823,464 wr)
==4001== D1  misses:        323,500  (    183,662 rd   +    139,838 wr)
==4001== LLd misses:        137,543  (      4,066 rd   +    133,477 wr)
==4001== D1  miss rate:         0.1% (        0.1%     +        0.2%  )
==4001== LLd miss rate:         0.1% (        0.0%     +        0.2%  )
==4001== 
==4001== LL refs:           327,006  (    187,168 rd   +    139,838 wr)
==4001== LL misses:         140,443  (      6,966 rd   +    133,477 wr)
==4001== LL miss rate:          0.0% (        0.0%     +        0.2%  )

@rakita rakita merged commit 73b689d into main Feb 5, 2024
25 checks passed
@rakita rakita deleted the tweeks branch February 7, 2024 12:45
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.

1 participant