Crate revmc_state_tests

Crate revmc_state_tests 

Source
Expand description

Ethereum state tests for revmc JIT compiler.

Runs tests from ethereum/tests against the JIT compiler and compares results with the revm interpreter.

Structsยง

CompiledContracts
JIT-compiled bytecode cache
ExecutionResult
Result from executing a test
TestResult
Test result from running a single test case

Constantsยง

DEFAULT_ETHTESTS_PATH ๐Ÿ”’
Default path to ethereum/tests repository

Functionsยง

build_pre_state
Build pre-state database from TestUnit
build_tx_env
Build transaction environment from test indices
call_jit_with_resume ๐Ÿ”’
Call JIT function with explicit resume_at tracking.
call_jit_with_resume_nested ๐Ÿ”’
Call JIT function with explicit resume_at tracking for nested frames. This is similar to call_jit_with_resume but accepts a generic Host.
compile_contracts
Compile all contracts in pre-state using JIT
execute_frame ๐Ÿ”’
Execute a nested call or create frame using JIT-compiled code.
execute_frame_interpreter ๐Ÿ”’
Execute a nested call frame using the interpreter.
find_json_tests
Find all JSON test files in a directory
get_ethtests_path
Get the path to ethereum/tests
insert_call_outcome ๐Ÿ”’
Insert call outcome into interpreter state.
load_test_suite
Load a test suite from a JSON file
run_general_state_tests
Run all GeneralStateTests
run_single_test ๐Ÿ”’
Run a single test case comparing JIT vs interpreter
run_test_unit
Run a single test unit with the JIT compiler
run_with_interpreter ๐Ÿ”’
Run test with standard revm interpreter at bytecode level.
run_with_jit ๐Ÿ”’
Run test with JIT-compiled bytecode
spec_name_to_spec_id
Convert SpecName to SpecId