1
0
Fork 0
forked from forks/go-ethereum
go-ethereum-modded-tocallarg/core/vm/runtime
rjl493456442 e3d61e6db0
core, eth, internal, cmd: rework EVM constructor (#30745)
This pull request refactors the EVM constructor by removing the
TxContext parameter.

The EVM object is frequently overused. Ideally, only a single EVM
instance should be created and reused throughout the entire state
transition of a block, with the transaction context switched as needed
by calling evm.SetTxContext.

Unfortunately, in some parts of the code, the EVM object is repeatedly
created, resulting in unnecessary complexity. This pull request is the
first step towards gradually improving and simplifying this setup.

---------

Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-11-20 12:35:52 +01:00
..
doc.go
env.go core, eth, internal, cmd: rework EVM constructor (#30745) 2024-11-20 12:35:52 +01:00
runtime.go core/vm/runtime: invoke tx-end hook (#30711) 2024-11-04 11:39:06 +01:00
runtime_example_test.go
runtime_fuzz_test.go tests/fuzzers: move fuzzers into native packages (#28467) 2023-11-14 14:34:29 +01:00
runtime_test.go core/vm/program: evm bytecode-building utility (#30725) 2024-11-20 08:40:21 +01:00