Skip to content

Refactor EIP-7708 transfer logs to use generic TEip7708 flag#10817

Merged
benaadams merged 1 commit intobal-devnet-3from
refactor/eip7708-generic-flag
Mar 13, 2026
Merged

Refactor EIP-7708 transfer logs to use generic TEip7708 flag#10817
benaadams merged 1 commit intobal-devnet-3from
refactor/eip7708-generic-flag

Conversation

@LukaszRozmej
Copy link
Member

Summary

  • Replace runtime Spec.IsEip7708Enabled checks in AddTransferLog, AddBurnLog, and AddSelfDestructLog with generic TEip7708 : struct, IFlag parameter for JIT-time branch elimination
  • Thread TEip7708 through InstructionCall and InstructionSelfDestruct via the opcode function pointer table
  • Inline spec check into the private AddTransferLog(VmState) frame-entry overload (called once per frame, not per instruction)

Test plan

  • All 20 EIP-7708 tests pass
  • Full solution builds with 0 errors, 0 warnings

🤖 Generated with Claude Code

Replace runtime Spec.IsEip7708Enabled checks in AddTransferLog,
AddBurnLog, and AddSelfDestructLog with generic TEip7708 : IFlag
parameter for JIT-time branch elimination on hot instruction paths.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@LukaszRozmej LukaszRozmej force-pushed the refactor/eip7708-generic-flag branch from 88e168d to 7f6c551 Compare March 13, 2026 00:43
@LukaszRozmej LukaszRozmej marked this pull request as ready for review March 13, 2026 00:45
@github-actions
Copy link
Contributor

EVM Opcode Benchmark Diff

Aggregated runs: base=1, pr=1

No significant regressions or improvements detected.

@benaadams benaadams merged commit 9651308 into bal-devnet-3 Mar 13, 2026
400 of 401 checks passed
@benaadams benaadams deleted the refactor/eip7708-generic-flag branch March 13, 2026 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants