Skip to content

feat: Amsterdam devnet3 EIP updates#3438

Merged
rakita merged 5 commits into
mainfrom
devnet3
Mar 13, 2026
Merged

feat: Amsterdam devnet3 EIP updates#3438
rakita merged 5 commits into
mainfrom
devnet3

Conversation

@rakita
Copy link
Copy Markdown
Member

@rakita rakita commented Feb 24, 2026

Summary

Updates for Amsterdam devnet3 spec changes:

  • EIP-8024: Update DUPN/SWAPN/EXCHANGE encoding to branchless normalization using modular arithmetic and XOR instead of branching range checks
  • EIP-7708: Rename Selfdestruct event to Burn — updates the log topic hash to keccak256("Burn(address,uint256)") and renames all related functions/variables
  • EIP-7954: Add new contract size limits for Amsterdam — increases MAX_CODE_SIZE to 0x8000 (32KB) and MAX_INITCODE_SIZE to 0x10000 (64KB), replacing the previous EIP-7907 limits

Test plan

  • Existing EIP-7708 tests updated to use BURN_LOG_TOPIC
  • EIP-7954 validation tests added (initcode size limit success/failure, boundary between old and new limits, code size limit)
  • EIP-8024 stack instruction tests updated with new encoding values

Update decode_single/decode_pair to use branchless arithmetic per
ethereum/EIPs#11306: modular add for single values, XOR for pairs.
Extends EXCHANGE to support 2 additional swappable pairs (n up to 14).
Rename the EIP-7708 selfdestruct log event from
`Selfdestruct(address,uint256)` to `Burn(address,uint256)` per
EIP PR #11311. This updates the topic hash and makes the event
name more generic for any future ETH burn mechanism.
Add spec-aware max_code_size (0x8000) and max_initcode_size (0x10000)
defaults for AMSTERDAM+, falling back to EIP-170/EIP-3860 for earlier specs.
@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented Feb 24, 2026

Merging this PR will degrade performance by 3.07%

❌ 1 regressed benchmark
✅ 175 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
EXTCODECOPY_50 49.8 µs 51.4 µs -3.07%

Comparing devnet3 (3dd3a3a) with main (fb296d0)

Open in CodSpeed

@rakita
Copy link
Copy Markdown
Member Author

rakita commented Mar 12, 2026

These changes were tested with latest few statetests and are passing, EIP-8037 became a lot bigger than expected

@rakita rakita merged commit 48b4ded into main Mar 13, 2026
30 of 32 checks passed
@rakita rakita deleted the devnet3 branch March 13, 2026 10:45
@github-actions github-actions Bot mentioned this pull request Mar 12, 2026
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