Skip to content

perf(compiler): share full dynamic dispatch in stack SSA - #586

Open
ZR74 wants to merge 1 commit into
DTVMStack:mainfrom
ZR74:perf/share-ssa-full-dynamic-dispatch
Open

perf(compiler): share full dynamic dispatch in stack SSA#586
ZR74 wants to merge 1 commit into
DTVMStack:mainfrom
ZR74:perf/share-ssa-full-dynamic-dispatch

Conversation

@ZR74

@ZR74 ZR74 commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

What changed

  • Reuse the module-level full dynamic-jump dispatch in stack-SSA builds when
    analysis cannot narrow the target set.
  • Keep source-specific dispatch tables when analysis proves a filtered
    candidate-target set.
  • Add FullDynamicDispatchIsSharedAcrossSources to prevent full dispatch
    duplication from returning.
  • Document the lowering contract and the compile-growth optimization.

Why

Before this change, stack-SSA mode deliberately bypassed the existing
shared-dispatch path. Every unfiltered dynamic JUMP or JUMPI source
therefore emitted another full switch over all JUMPDEST targets. With S
dynamic sources and T targets, the duplicated switch structure grew
approximately with S × T, inflating MIR/CgIR, compile work, and generated
code.

Effect

Unfiltered sources now branch to one module-level full dispatch. The full-table
portion therefore grows approximately with T + S instead of S × T, while
statically narrowed sources retain their smaller per-source dispatch tables.

This is a compiler-structure optimization only:

  • dynamic-jump destination validation is unchanged;
  • filtered target information is preserved;
  • EVM execution semantics are unchanged;
  • the generated control flow still reaches the same valid JUMPDEST blocks.

Validation

  • Added a structural regression covering multiple unfiltered dynamic sources.
  • evmJitFrontendTests: 109/109 passed.
  • Strict clang-format --dry-run --Werror passed.
  • git diff --check passed.
  • Commit Lint, WASM CI, and EVM CI passed on the fork branch.

Reuse the module-level full-table dispatch for unfiltered dynamic jumps when stack-SSA lifting is enabled. Keep proven filtered target sets source-specific and add a structural regression for dispatch growth.
Copilot AI review requested due to automatic review settings July 29, 2026 03:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@ZR74
ZR74 marked this pull request as ready for review July 29, 2026 03:30
@github-actions

Copy link
Copy Markdown

⚡ Performance Regression Check Results

✅ Performance Check Passed (interpreter)

Performance Benchmark Results (threshold: 25%)

Benchmark Baseline (us) Current (us) Change Status
total/main/blake2b_huff/8415nulls 2.55 2.45 -4.1% PASS
total/main/blake2b_huff/empty 0.04 0.04 +0.2% PASS
total/main/blake2b_shifts/8415nulls 14.01 13.98 -0.2% PASS
total/main/sha1_divs/5311 8.02 8.24 +2.8% PASS
total/main/sha1_divs/empty 0.10 0.10 -3.6% PASS
total/main/sha1_shifts/5311 5.35 5.48 +2.5% PASS
total/main/sha1_shifts/empty 0.04 0.04 -0.3% PASS
total/main/snailtracer/benchmark 86.05 88.61 +3.0% PASS
total/main/structarray_alloc/nfts_rank 1.10 1.11 +0.2% PASS
total/main/swap_math/insufficient_liquidity 0.00 0.00 -0.2% PASS
total/main/swap_math/received 0.01 0.01 +0.3% PASS
total/main/swap_math/spent 0.01 0.01 -6.2% PASS
total/main/weierstrudel/1 0.31 0.31 +0.9% PASS
total/main/weierstrudel/15 3.47 3.42 -1.3% PASS
total/micro/JUMPDEST_n0/empty 2.63 2.63 -0.1% PASS
total/micro/jump_around/empty 0.12 0.11 -6.8% PASS
total/micro/loop_with_many_jumpdests/empty 69.47 68.61 -1.2% PASS
total/micro/memory_grow_mload/by1 0.18 0.17 -6.2% PASS
total/micro/memory_grow_mload/by16 0.20 0.19 -3.4% PASS
total/micro/memory_grow_mload/by32 0.11 0.11 +1.1% PASS
total/micro/memory_grow_mload/nogrow 0.09 0.09 +3.7% PASS
total/micro/memory_grow_mstore/by1 0.18 0.20 +6.8% PASS
total/micro/memory_grow_mstore/by16 0.11 0.11 -0.0% PASS
total/micro/memory_grow_mstore/by32 0.25 0.24 -1.7% PASS
total/micro/memory_grow_mstore/nogrow 0.20 0.18 -9.0% PASS
total/micro/signextend/one 0.26 0.26 +0.3% PASS
total/micro/signextend/zero 0.50 0.49 -3.5% PASS
total/synth/ADD/b0 2.30 2.30 -0.4% PASS
total/synth/ADD/b1 2.67 2.80 +4.9% PASS
total/synth/ADDRESS/a0 6.12 6.03 -1.4% PASS
total/synth/ADDRESS/a1 5.10 5.07 -0.6% PASS
total/synth/AND/b0 2.15 2.15 -0.1% PASS
total/synth/AND/b1 2.44 2.35 -3.8% PASS
total/synth/BYTE/b0 6.15 6.16 +0.3% PASS
total/synth/BYTE/b1 8.11 8.36 +3.1% PASS
total/synth/CALLDATASIZE/a0 5.38 5.45 +1.3% PASS
total/synth/CALLDATASIZE/a1 3.37 3.36 -0.3% PASS
total/synth/CALLER/a0 6.14 5.86 -4.5% PASS
total/synth/CALLER/a1 6.25 6.35 +1.5% PASS
total/synth/CALLVALUE/a0 3.46 3.52 +1.7% PASS
total/synth/CALLVALUE/a1 6.05 5.95 -1.7% PASS
total/synth/CODESIZE/a0 5.74 5.92 +3.1% PASS
total/synth/CODESIZE/a1 6.47 6.17 -4.7% PASS
total/synth/DUP1/d0 1.57 1.61 +3.0% PASS
total/synth/DUP1/d1 1.60 1.80 +12.5% PASS
total/synth/DUP10/d0 1.55 1.50 -3.2% PASS
total/synth/DUP10/d1 1.64 1.64 +0.3% PASS
total/synth/DUP11/d0 1.07 1.07 -0.2% PASS
total/synth/DUP11/d1 1.73 1.70 -1.5% PASS
total/synth/DUP12/d0 1.51 1.70 +12.3% PASS
total/synth/DUP12/d1 1.08 1.07 -0.8% PASS
total/synth/DUP13/d0 1.52 1.65 +8.6% PASS
total/synth/DUP13/d1 1.66 1.66 +0.2% PASS
total/synth/DUP14/d0 1.07 1.07 -0.4% PASS
total/synth/DUP14/d1 1.65 1.78 +7.8% PASS
total/synth/DUP15/d0 1.56 1.54 -1.3% PASS
total/synth/DUP15/d1 1.06 1.07 +1.5% PASS
total/synth/DUP16/d0 1.52 1.58 +4.1% PASS
total/synth/DUP16/d1 1.72 1.76 +2.5% PASS
total/synth/DUP2/d0 1.07 0.83 -22.0% PASS
total/synth/DUP2/d1 1.67 1.75 +6.0% PASS
total/synth/DUP3/d0 1.58 1.48 -6.3% PASS
total/synth/DUP3/d1 1.05 1.07 +2.0% PASS
total/synth/DUP4/d0 1.49 1.57 +5.3% PASS
total/synth/DUP4/d1 1.68 1.69 +0.3% PASS
total/synth/DUP5/d0 1.07 1.07 -0.2% PASS
total/synth/DUP5/d1 1.66 1.73 +4.2% PASS
total/synth/DUP6/d0 1.56 1.56 -0.2% PASS
total/synth/DUP6/d1 1.07 1.07 -0.4% PASS
total/synth/DUP7/d0 1.48 1.50 +1.3% PASS
total/synth/DUP7/d1 1.64 1.79 +9.3% PASS
total/synth/DUP8/d0 1.06 0.85 -20.2% PASS
total/synth/DUP8/d1 1.78 1.72 -3.6% PASS
total/synth/DUP9/d0 1.51 1.50 -0.3% PASS
total/synth/DUP9/d1 1.07 1.06 -1.2% PASS
total/synth/EQ/b0 4.54 4.53 -0.1% PASS
total/synth/EQ/b1 4.87 4.84 -0.5% PASS
total/synth/GAS/a0 3.85 3.85 +0.2% PASS
total/synth/GAS/a1 6.94 6.93 -0.2% PASS
total/synth/GT/b0 4.82 4.85 +0.8% PASS
total/synth/GT/b1 4.92 4.88 -0.6% PASS
total/synth/ISZERO/u0 7.08 7.07 -0.2% PASS
total/synth/JUMPDEST/n0 2.64 2.63 -0.1% PASS
total/synth/LT/b0 4.80 4.80 +0.1% PASS
total/synth/LT/b1 4.37 4.38 +0.2% PASS
total/synth/MSIZE/a0 5.50 5.27 -4.2% PASS
total/synth/MSIZE/a1 5.87 5.62 -4.2% PASS
total/synth/MUL/b0 5.57 5.57 -0.1% PASS
total/synth/MUL/b1 5.35 5.34 -0.0% PASS
total/synth/NOT/u0 1.83 1.84 +0.2% PASS
total/synth/OR/b0 2.13 2.14 +0.3% PASS
total/synth/OR/b1 1.76 1.77 +0.4% PASS
total/synth/PC/a0 5.37 5.50 +2.3% PASS
total/synth/PC/a1 3.45 3.44 -0.5% PASS
total/synth/PUSH1/p0 1.82 1.80 -1.5% PASS
total/synth/PUSH1/p1 1.63 1.65 +1.4% PASS
total/synth/PUSH10/p0 1.90 2.15 +13.3% PASS
total/synth/PUSH10/p1 1.63 1.63 +0.1% PASS
total/synth/PUSH11/p0 1.81 1.92 +6.2% PASS
total/synth/PUSH11/p1 2.10 2.06 -2.2% PASS
total/synth/PUSH12/p0 1.20 1.20 -0.0% PASS
total/synth/PUSH12/p1 2.09 2.06 -1.3% PASS
total/synth/PUSH13/p0 1.84 1.80 -2.0% PASS
total/synth/PUSH13/p1 1.63 1.63 -0.0% PASS
total/synth/PUSH14/p0 2.06 2.02 -2.1% PASS
total/synth/PUSH14/p1 1.93 1.96 +1.7% PASS
total/synth/PUSH15/p0 1.19 1.19 -0.1% PASS
total/synth/PUSH15/p1 2.15 2.41 +11.9% PASS
total/synth/PUSH16/p0 1.82 1.87 +2.9% PASS
total/synth/PUSH16/p1 1.65 1.64 -0.8% PASS
total/synth/PUSH17/p0 1.88 1.87 -0.6% PASS
total/synth/PUSH17/p1 2.17 2.07 -4.5% PASS
total/synth/PUSH18/p0 1.20 1.19 -0.3% PASS
total/synth/PUSH18/p1 1.93 2.12 +9.4% PASS
total/synth/PUSH19/p0 1.80 2.03 +13.0% PASS
total/synth/PUSH19/p1 1.63 1.64 +0.1% PASS
total/synth/PUSH2/p0 1.82 1.90 +4.4% PASS
total/synth/PUSH2/p1 2.10 1.90 -9.5% PASS
total/synth/PUSH20/p0 1.79 1.89 +5.9% PASS
total/synth/PUSH20/p1 2.04 1.96 -4.2% PASS
total/synth/PUSH21/p0 1.20 1.20 +0.0% PASS
total/synth/PUSH21/p1 1.93 2.08 +7.8% PASS
total/synth/PUSH22/p0 1.92 2.02 +5.2% PASS
total/synth/PUSH22/p1 1.63 1.64 +0.0% PASS
total/synth/PUSH23/p0 1.82 1.88 +3.5% PASS
total/synth/PUSH23/p1 1.95 2.04 +4.7% PASS
total/synth/PUSH24/p0 1.20 1.19 -0.2% PASS
total/synth/PUSH24/p1 2.14 2.02 -5.7% PASS
total/synth/PUSH25/p0 1.85 1.92 +4.2% PASS
total/synth/PUSH25/p1 1.63 1.66 +1.6% PASS
total/synth/PUSH26/p0 1.79 1.79 +0.0% PASS
total/synth/PUSH26/p1 1.97 2.11 +7.2% PASS
total/synth/PUSH27/p0 1.20 1.20 -0.4% PASS
total/synth/PUSH27/p1 2.04 2.00 -2.2% PASS
total/synth/PUSH28/p0 1.86 1.79 -3.9% PASS
total/synth/PUSH28/p1 1.64 1.64 +0.1% PASS
total/synth/PUSH29/p0 1.99 1.87 -6.0% PASS
total/synth/PUSH29/p1 2.04 2.04 +0.1% PASS
total/synth/PUSH3/p0 1.20 1.19 -0.2% PASS
total/synth/PUSH3/p1 1.99 2.02 +1.6% PASS
total/synth/PUSH30/p0 1.27 1.28 +0.9% PASS
total/synth/PUSH30/p1 2.00 2.22 +10.7% PASS
total/synth/PUSH31/p0 1.81 1.96 +8.2% PASS
total/synth/PUSH31/p1 1.69 1.76 +4.2% PASS
total/synth/PUSH32/p0 1.81 1.98 +9.5% PASS
total/synth/PUSH32/p1 2.01 1.99 -0.7% PASS
total/synth/PUSH4/p0 1.91 1.90 -0.2% PASS
total/synth/PUSH4/p1 1.64 1.63 -0.6% PASS
total/synth/PUSH5/p0 1.81 1.81 +0.3% PASS
total/synth/PUSH5/p1 1.94 2.01 +4.2% PASS
total/synth/PUSH6/p0 1.20 1.21 +0.5% PASS
total/synth/PUSH6/p1 2.03 2.08 +2.9% PASS
total/synth/PUSH7/p0 1.84 2.09 +13.3% PASS
total/synth/PUSH7/p1 1.65 1.64 -0.5% PASS
total/synth/PUSH8/p0 1.83 1.92 +4.8% PASS
total/synth/PUSH8/p1 1.96 1.98 +1.0% PASS
total/synth/PUSH9/p0 1.20 1.20 -0.6% PASS
total/synth/PUSH9/p1 2.01 1.92 -3.7% PASS
total/synth/RETURNDATASIZE/a0 3.37 3.35 -0.5% PASS
total/synth/RETURNDATASIZE/a1 6.28 6.11 -2.6% PASS
total/synth/SAR/b0 3.98 3.98 +0.1% PASS
total/synth/SAR/b1 7.24 7.63 +5.4% PASS
total/synth/SGT/b0 3.60 3.62 +0.6% PASS
total/synth/SGT/b1 3.38 3.39 +0.2% PASS
total/synth/SHL/b0 3.75 3.68 -1.7% PASS
total/synth/SHL/b1 1.85 1.86 +0.4% PASS
total/synth/SHR/b0 3.77 3.76 -0.3% PASS
total/synth/SHR/b1 2.97 3.22 +9.7% PASS
total/synth/SIGNEXTEND/b0 3.28 3.29 +0.3% PASS
total/synth/SIGNEXTEND/b1 6.87 6.42 -6.4% PASS
total/synth/SLT/b0 3.44 3.44 -0.0% PASS
total/synth/SLT/b1 3.70 3.71 +0.2% PASS
total/synth/SUB/b0 2.71 2.57 -5.1% PASS
total/synth/SUB/b1 2.73 2.81 +2.9% PASS
total/synth/SWAP1/s0 1.51 1.55 +2.8% PASS
total/synth/SWAP10/s0 1.57 1.53 -2.4% PASS
total/synth/SWAP11/s0 2.65 2.82 +6.2% PASS
total/synth/SWAP12/s0 2.64 2.64 -0.3% PASS
total/synth/SWAP13/s0 1.52 1.52 +0.1% PASS
total/synth/SWAP14/s0 2.68 2.64 -1.3% PASS
total/synth/SWAP15/s0 2.67 2.78 +4.1% PASS
total/synth/SWAP16/s0 1.55 1.53 -1.4% PASS
total/synth/SWAP2/s0 2.70 2.78 +2.8% PASS
total/synth/SWAP3/s0 2.67 2.65 -0.6% PASS
total/synth/SWAP4/s0 1.51 1.51 -0.0% PASS
total/synth/SWAP5/s0 2.63 2.74 +4.2% PASS
total/synth/SWAP6/s0 2.64 2.79 +5.9% PASS
total/synth/SWAP7/s0 1.52 1.52 -0.0% PASS
total/synth/SWAP8/s0 2.72 2.65 -2.7% PASS
total/synth/SWAP9/s0 2.65 2.75 +3.8% PASS
total/synth/XOR/b0 1.99 2.03 +2.0% PASS
total/synth/XOR/b1 2.16 2.09 -3.3% PASS
total/synth/loop_v1 8.94 8.77 -1.9% PASS
total/synth/loop_v2 8.89 9.48 +6.6% PASS

Summary: 194 benchmarks, 0 regressions


✅ Performance Check Passed (multipass)

Performance Benchmark Results (threshold: 25%)

Benchmark Baseline (us) Current (us) Change Status
total/main/blake2b_huff/8415nulls 1.31 1.46 +11.5% PASS
total/main/blake2b_huff/empty 0.02 0.02 -1.8% PASS
total/main/blake2b_shifts/8415nulls 4.31 4.30 -0.2% PASS
total/main/sha1_divs/5311 0.89 0.88 -1.0% PASS
total/main/sha1_divs/empty 0.01 0.01 -5.1% PASS
total/main/sha1_shifts/5311 0.77 0.78 +1.3% PASS
total/main/sha1_shifts/empty 0.01 0.01 -0.3% PASS
total/main/structarray_alloc/nfts_rank 0.26 0.26 -0.6% PASS
total/main/swap_math/insufficient_liquidity 0.00 0.00 -1.5% PASS
total/main/swap_math/received 0.01 0.01 +0.8% PASS
total/main/swap_math/spent 0.01 0.01 +0.4% PASS
total/main/weierstrudel/1 0.33 0.33 +1.2% PASS
total/main/weierstrudel/15 3.66 3.68 +0.7% PASS
total/micro/JUMPDEST_n0/empty 0.00 0.00 -0.7% PASS
total/micro/jump_around/empty 0.07 0.08 +7.2% PASS
total/micro/loop_with_many_jumpdests/empty 0.01 0.01 +1.5% PASS
total/micro/memory_grow_mload/by1 0.02 0.02 +5.1% PASS
total/micro/memory_grow_mload/by16 0.02 0.02 +6.4% PASS
total/micro/memory_grow_mload/by32 0.01 0.01 -0.2% PASS
total/micro/memory_grow_mload/nogrow 0.01 0.01 +2.1% PASS
total/micro/memory_grow_mstore/by1 0.02 0.02 -0.8% PASS
total/micro/memory_grow_mstore/by16 0.01 0.01 +0.3% PASS
total/micro/memory_grow_mstore/by32 0.03 0.02 -5.0% PASS
total/micro/memory_grow_mstore/nogrow 0.02 0.02 +5.2% PASS
total/micro/signextend/one 0.08 0.08 +0.8% PASS
total/micro/signextend/zero 0.19 0.19 -0.0% PASS
total/synth/ADD/b0 0.00 0.00 +0.0% PASS
total/synth/ADD/b1 0.00 0.00 +0.5% PASS
total/synth/ADDRESS/a0 0.22 0.22 +2.7% PASS
total/synth/ADDRESS/a1 0.15 0.15 +0.4% PASS
total/synth/AND/b0 0.00 0.00 -0.1% PASS
total/synth/AND/b1 0.00 0.00 -1.8% PASS
total/synth/BYTE/b0 0.00 0.00 +0.2% PASS
total/synth/BYTE/b1 0.00 0.00 +0.8% PASS
total/synth/CALLDATASIZE/a0 0.14 0.12 -12.4% PASS
total/synth/CALLDATASIZE/a1 0.07 0.07 -0.2% PASS
total/synth/CALLER/a0 0.22 0.22 -1.6% PASS
total/synth/CALLER/a1 0.23 0.22 -3.3% PASS
total/synth/CALLVALUE/a0 0.19 0.19 -0.4% PASS
total/synth/CALLVALUE/a1 0.28 0.31 +10.4% PASS
total/synth/CODESIZE/a0 0.12 0.12 -1.5% PASS
total/synth/CODESIZE/a1 0.12 0.12 -0.8% PASS
total/synth/DUP1/d0 0.00 0.00 -0.6% PASS
total/synth/DUP1/d1 0.00 0.00 -2.5% PASS
total/synth/DUP10/d0 0.00 0.00 +1.3% PASS
total/synth/DUP10/d1 0.00 0.00 +1.5% PASS
total/synth/DUP11/d0 0.00 0.00 -0.1% PASS
total/synth/DUP11/d1 0.00 0.00 -0.4% PASS
total/synth/DUP12/d0 0.00 0.00 +0.4% PASS
total/synth/DUP12/d1 0.00 0.00 -0.4% PASS
total/synth/DUP13/d0 0.00 0.00 -1.4% PASS
total/synth/DUP13/d1 0.00 0.00 -0.2% PASS
total/synth/DUP14/d0 0.00 0.00 +0.3% PASS
total/synth/DUP14/d1 0.00 0.00 -0.3% PASS
total/synth/DUP15/d0 0.00 0.00 -0.1% PASS
total/synth/DUP15/d1 0.00 0.00 +0.3% PASS
total/synth/DUP16/d0 0.00 0.00 -0.0% PASS
total/synth/DUP16/d1 0.00 0.00 +0.3% PASS
total/synth/DUP2/d0 0.00 0.00 -0.1% PASS
total/synth/DUP2/d1 0.00 0.00 -1.3% PASS
total/synth/DUP3/d0 0.00 0.00 +0.7% PASS
total/synth/DUP3/d1 0.00 0.00 -0.2% PASS
total/synth/DUP4/d0 0.00 0.00 -1.8% PASS
total/synth/DUP4/d1 0.00 0.00 -0.1% PASS
total/synth/DUP5/d0 0.00 0.00 -0.4% PASS
total/synth/DUP5/d1 0.00 0.00 +0.2% PASS
total/synth/DUP6/d0 0.00 0.00 -0.0% PASS
total/synth/DUP6/d1 0.00 0.00 +0.3% PASS
total/synth/DUP7/d0 0.00 0.00 -0.5% PASS
total/synth/DUP7/d1 0.00 0.00 +0.5% PASS
total/synth/DUP8/d0 0.00 0.00 -0.1% PASS
total/synth/DUP8/d1 0.00 0.00 +1.2% PASS
total/synth/DUP9/d0 0.00 0.00 -0.1% PASS
total/synth/DUP9/d1 0.00 0.00 -0.2% PASS
total/synth/EQ/b0 0.00 0.00 +0.6% PASS
total/synth/EQ/b1 0.00 0.00 +0.5% PASS
total/synth/GAS/a0 0.77 0.76 -0.2% PASS
total/synth/GAS/a1 0.93 0.93 -0.1% PASS
total/synth/GT/b0 0.00 0.00 +0.4% PASS
total/synth/GT/b1 0.00 0.00 +0.5% PASS
total/synth/ISZERO/u0 0.00 0.00 +0.2% PASS
total/synth/JUMPDEST/n0 0.00 0.00 +0.3% PASS
total/synth/LT/b0 0.00 0.00 -0.1% PASS
total/synth/LT/b1 0.00 0.00 +0.2% PASS
total/synth/MSIZE/a0 0.00 0.00 +0.8% PASS
total/synth/MSIZE/a1 0.00 0.00 +0.2% PASS
total/synth/MUL/b0 0.00 0.00 -0.6% PASS
total/synth/MUL/b1 0.00 0.00 -0.1% PASS
total/synth/NOT/u0 0.00 0.00 +1.0% PASS
total/synth/OR/b0 0.00 0.00 -0.2% PASS
total/synth/OR/b1 0.00 0.00 -0.4% PASS
total/synth/PC/a0 0.00 0.00 +0.5% PASS
total/synth/PC/a1 0.00 0.00 -0.4% PASS
total/synth/PUSH1/p0 0.00 0.00 -0.8% PASS
total/synth/PUSH1/p1 0.00 0.00 +0.2% PASS
total/synth/PUSH10/p0 0.00 0.00 -0.1% PASS
total/synth/PUSH10/p1 0.00 0.00 +2.6% PASS
total/synth/PUSH11/p0 0.00 0.00 -1.7% PASS
total/synth/PUSH11/p1 0.00 0.00 -5.2% PASS
total/synth/PUSH12/p0 0.00 0.00 -0.0% PASS
total/synth/PUSH12/p1 0.00 0.00 +2.0% PASS
total/synth/PUSH13/p0 0.00 0.00 -5.1% PASS
total/synth/PUSH13/p1 0.00 0.00 -0.7% PASS
total/synth/PUSH14/p0 0.00 0.00 +2.2% PASS
total/synth/PUSH14/p1 0.00 0.00 -0.0% PASS
total/synth/PUSH15/p0 0.00 0.00 +0.3% PASS
total/synth/PUSH15/p1 0.00 0.00 -3.4% PASS
total/synth/PUSH16/p0 0.00 0.00 +2.3% PASS
total/synth/PUSH16/p1 0.00 0.00 -2.8% PASS
total/synth/PUSH17/p0 0.00 0.00 +3.6% PASS
total/synth/PUSH17/p1 0.00 0.00 -0.4% PASS
total/synth/PUSH18/p0 0.00 0.00 -0.6% PASS
total/synth/PUSH18/p1 0.00 0.00 +1.8% PASS
total/synth/PUSH19/p0 0.00 0.00 +0.3% PASS
total/synth/PUSH19/p1 0.00 0.00 +1.6% PASS
total/synth/PUSH2/p0 0.00 0.00 -1.0% PASS
total/synth/PUSH2/p1 0.00 0.00 +2.4% PASS
total/synth/PUSH20/p0 0.00 0.00 -4.4% PASS
total/synth/PUSH20/p1 0.00 0.00 -1.1% PASS
total/synth/PUSH21/p0 0.00 0.00 -0.1% PASS
total/synth/PUSH21/p1 0.00 0.00 -1.9% PASS
total/synth/PUSH22/p0 1.71 1.72 +0.5% PASS
total/synth/PUSH22/p1 1.66 1.64 -0.9% PASS
total/synth/PUSH23/p0 1.70 1.68 -1.0% PASS
total/synth/PUSH23/p1 1.92 1.91 -0.4% PASS
total/synth/PUSH24/p0 1.20 1.20 +0.1% PASS
total/synth/PUSH24/p1 1.87 1.91 +2.4% PASS
total/synth/PUSH25/p0 1.67 1.66 -0.7% PASS
total/synth/PUSH25/p1 1.66 1.64 -1.2% PASS
total/synth/PUSH26/p0 1.70 1.68 -0.7% PASS
total/synth/PUSH26/p1 1.90 1.88 -1.2% PASS
total/synth/PUSH27/p0 1.20 1.20 +0.1% PASS
total/synth/PUSH27/p1 1.91 1.88 -1.6% PASS
total/synth/PUSH28/p0 1.76 1.68 -4.5% PASS
total/synth/PUSH28/p1 1.66 1.66 -0.3% PASS
total/synth/PUSH29/p0 1.71 1.71 -0.1% PASS
total/synth/PUSH29/p1 1.86 1.87 +0.7% PASS
total/synth/PUSH3/p0 0.00 0.00 +2.0% PASS
total/synth/PUSH3/p1 0.00 0.00 +0.4% PASS
total/synth/PUSH30/p0 1.30 1.26 -2.8% PASS
total/synth/PUSH30/p1 1.93 1.89 -2.2% PASS
total/synth/PUSH31/p0 1.67 1.72 +3.1% PASS
total/synth/PUSH31/p1 1.71 1.70 -0.7% PASS
total/synth/PUSH32/p0 1.72 1.70 -1.1% PASS
total/synth/PUSH32/p1 1.89 1.87 -0.7% PASS
total/synth/PUSH4/p0 0.00 0.00 +2.4% PASS
total/synth/PUSH4/p1 0.00 0.00 -1.2% PASS
total/synth/PUSH5/p0 0.00 0.00 +0.2% PASS
total/synth/PUSH5/p1 0.00 0.00 +4.3% PASS
total/synth/PUSH6/p0 0.00 0.00 +1.2% PASS
total/synth/PUSH6/p1 0.00 0.00 +2.4% PASS
total/synth/PUSH7/p0 0.00 0.00 +0.1% PASS
total/synth/PUSH7/p1 0.00 0.00 +0.7% PASS
total/synth/PUSH8/p0 0.00 0.00 +0.5% PASS
total/synth/PUSH8/p1 0.00 0.00 +1.6% PASS
total/synth/PUSH9/p0 0.00 0.00 +2.7% PASS
total/synth/PUSH9/p1 0.00 0.00 +3.0% PASS
total/synth/RETURNDATASIZE/a0 0.03 0.03 -0.0% PASS
total/synth/RETURNDATASIZE/a1 0.06 0.06 -0.2% PASS
total/synth/SAR/b0 0.00 0.00 +0.4% PASS
total/synth/SAR/b1 0.00 0.00 +0.5% PASS
total/synth/SGT/b0 0.00 0.00 -3.1% PASS
total/synth/SGT/b1 0.00 0.00 +0.3% PASS
total/synth/SHL/b0 0.00 0.00 +1.5% PASS
total/synth/SHL/b1 0.00 0.00 +0.4% PASS
total/synth/SHR/b0 0.00 0.00 -1.0% PASS
total/synth/SHR/b1 0.00 0.00 +0.9% PASS
total/synth/SIGNEXTEND/b0 0.00 0.00 +0.3% PASS
total/synth/SIGNEXTEND/b1 0.00 0.00 +1.5% PASS
total/synth/SLT/b0 0.00 0.00 +0.2% PASS
total/synth/SLT/b1 0.00 0.00 -0.5% PASS
total/synth/SUB/b0 0.00 0.00 -2.3% PASS
total/synth/SUB/b1 0.00 0.00 +1.6% PASS
total/synth/SWAP1/s0 0.00 0.00 -0.1% PASS
total/synth/SWAP10/s0 0.00 0.00 +1.0% PASS
total/synth/SWAP11/s0 0.00 0.00 +0.1% PASS
total/synth/SWAP12/s0 0.00 0.00 +0.1% PASS
total/synth/SWAP13/s0 0.00 0.00 -0.3% PASS
total/synth/SWAP14/s0 0.00 0.00 -1.1% PASS
total/synth/SWAP15/s0 0.00 0.00 -0.1% PASS
total/synth/SWAP16/s0 0.00 0.00 -0.2% PASS
total/synth/SWAP2/s0 0.00 0.00 +1.6% PASS
total/synth/SWAP3/s0 0.00 0.00 +0.5% PASS
total/synth/SWAP4/s0 0.00 0.00 +0.3% PASS
total/synth/SWAP5/s0 0.00 0.00 +0.0% PASS
total/synth/SWAP6/s0 0.00 0.00 -0.1% PASS
total/synth/SWAP7/s0 0.00 0.00 +0.2% PASS
total/synth/SWAP8/s0 0.00 0.00 -3.2% PASS
total/synth/SWAP9/s0 0.00 0.00 -0.0% PASS
total/synth/XOR/b0 0.00 0.00 +0.0% PASS
total/synth/XOR/b1 0.00 0.00 -3.5% PASS
total/synth/loop_v1 8.42 8.42 -0.0% PASS
total/synth/loop_v2 8.40 8.79 +4.6% PASS

Summary: 193 benchmarks, 0 regressions


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.

2 participants