mirror of
https://github.com/status-im/nimbus-eth1.git
synced 2025-01-14 06:15:57 +00:00
5fb3c51e5e
Add another flag to disable a processing step when a call doesn't come from a real transaction: - `noTransfer`: Don't update balances, nonces, code. This is to support VM fixtures tests which require account balances and nonces to be unchanged when running the account's code. These tests call `c.executeOpcodes()`, an internal function of the EVM, instead of the usual `c.execComputation()`. It goes direct to the bytecode dispatcher, skipping parts of `Computation` that are normally called. But we can't keep calling `c.executeOpcodes()` and have a single entry point to the VM, let alone an EVMC entry point. `noTransfer` provides similar enough behaviour to calling `c.executeOpcodes()` that these tests can use the new single entry point like everything else. Signed-off-by: Jamie Lokier <jamie@shareable.org>