Skip to content

Comments

core, build: reintroduce evmone#33833

Open
tellabg wants to merge 1 commit intoethereum:masterfrom
tellabg:evm-one-reborn-with-keeper
Open

core, build: reintroduce evmone#33833
tellabg wants to merge 1 commit intoethereum:masterfrom
tellabg:evm-one-reborn-with-keeper

Conversation

@tellabg
Copy link

@tellabg tellabg commented Feb 13, 2026

Reintroduce evmone as an EVM interpreter option behind the evmone build tag.

Changes

  • Integrate evmone via CGO with EVMC interface
  • Propagate gas refund from evmone to Go StateDB (fixes gas overcharge bug)
  • Allocate all C parameters in C memory to avoid CGO pointer issues
  • Map chain fork rules to EVMC revision constants
  • Support building with -tags evmone (default build uses Go interpreter)

Testing

  • Verified on Hoodi testnet: synced past block 2,225,900+ with correct gas accounting
  • Block 2,220,982 gas totals match network consensus after refund fix
  • All canonical blocks validated successfully
  • Requires --cache.noprefetch flag (prefetcher has thread-safety issues with evmone callbacks)

Reintroduce evmone as an EVM interpreter option behind the 'evmone' build tag.
Includes gas refund propagation from evmone to Go StateDB, and C memory
allocation for all parameters passed across the CGO boundary.
@tellabg tellabg force-pushed the evm-one-reborn-with-keeper branch from dd0ca08 to 73f4ec8 Compare February 13, 2026 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants