# EEST Benchmark Analysis https://github.com/ethereum/execution-spec-tests/releases/tag/benchmark%40v0.0.7 For each test targetting an opcode/precompile, look at its `opcode_counts` within each test and see which opcodes actually dominate. Key patterns: - Simple binary ops (EQ, SUB, MUL, AND, OR, XOR, SHL): dominated by DUP2 + the target opcode in near-equal counts (~59M each at 7 tests), reflecting tight benchmark loops - Shift-based ops (SAR, SHR): SAR/SHR leads, with SHL as supporting infrastructure - Call-type ops (CALL, CALLCODE, DELEGATECALL, STATICCALL): heavy MSIZE/MSTORE/PUSH32/XOR scaffolding (~134M) with the call itself at ~23M - Precompiles (SHA2-256, identity): PUSH0/PUSH1 dominate setup, with STATICCALL as the call mechanism - CALLDATACOPY: highest total volume test suite (434 tests, 1.7B PUSH1 ops) - SELFDESTRUCT: uniquely diverse opcode profile with EXTCODESIZE, SUB, ADD in top 10 ## REVERT Example where target opcode is 8th most frequently called **Number of tests:** 35 ### Aggregate Opcode Frequency (all tests combined) | Rank | Opcode | Total Count | |------|--------|-------------| | 1 | PUSH0 | 16,943,210 | | 2 | PUSH1 | 10,765,996 | | 3 | POP | 5,647,599 | | 4 | PUSH20 | 5,647,576 | | 5 | CALLDATASIZE | 5,647,558 | | 6 | GAS | 5,647,436 | | 7 | STATICCALL | 5,647,436 | | 8 | REVERT | 5,647,298 | | 9 | PUSH2 | 3,797,104 | | 10 | CODECOPY | 1,087,140 | | 11 | JUMPDEST | 7,153 | | 12 | JUMP | 6,473 | | 13 | PUSH3 | 651 | | 14 | JUMPI | 490 | | 15 | SSTORE | 385 | example test <details><summary><code>test_return_revert[fork_Osaka-blockchain_test-1KiB of non-zero data-opcode_REVERT-benchmark-gas-value_100M]</code></summary> | Opcode | Count | |--------|-------| | PUSH1 | 916,473 | | PUSH0 | 916,140 | | PUSH2 | 610,744 | | CALLDATASIZE | 305,376 | | POP | 305,375 | | PUSH20 | 305,374 | | GAS | 305,370 | | STATICCALL | 305,370 | | CODECOPY | 305,369 | | REVERT | 305,364 | | JUMPDEST | 370 | | JUMP | 348 |