Skip to content

perf(evm): reuse CFG memory proofs for CALL ranges - #585

Merged
zoowii merged 2 commits into
DTVMStack:mainfrom
ECNUyhy:codex/call-cfg-proof-20260728
Jul 29, 2026
Merged

perf(evm): reuse CFG memory proofs for CALL ranges#585
zoowii merged 2 commits into
DTVMStack:mainfrom
ECNUyhy:codex/call-cfg-proof-20260728

Conversation

@ECNUyhy

@ECNUyhy ECNUyhy commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

  • N
  • Y

2. What is the scope of this PR (e.g. component or file name):

EVM multipass JIT CALL-family lowering, runtime CALL helpers, and EVM frontend/differential tests.

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

  • Affects user behaviors
  • Contains CI/CD configuration changes
  • Contains documentation changes
  • Contains experimental features
  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Other

Reuse CFG-propagated guaranteed memory-size facts for CALL, CALLCODE, DELEGATECALL, and STATICCALL when both the argument and return ranges are already covered.

The first commit adds prepared-memory runtime helpers while preserving the existing account-access, delegated-code, static-mode, call-gas, depth, and host-call ordering. The second commit selects those helpers only when both ranges are proven at the exact opcode PC; uncovered or dynamic ranges retain the generic expansion path, and zero-length ranges retain EVM empty-range semantics.

A 65-contract real-bytecode corpus selected the prepared path 125 times across 23 contracts. A sequential merge simulation with the COPY, KECCAK, and RETURN/REVERT CFG-proof consumers merged without conflicts.

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

  • N
  • Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

  • Unit test
  • Integration test
  • Benchmark (add benchmark stats below)
  • Manual test (add detailed scripts or steps below)
  • Other

Validation:

  • ./tools/format.sh format and ./tools/format.sh check
  • evmJitFrontendTests: 110/110 passed on this branch
  • runnable evmDifferentialTests: 27/27 passed, including identity-precompile output/gas equality and zero-length high-offset semantics
  • combined COPY -> KECCAK -> RETURN/REVERT -> CALL merge simulation: 121/121 frontend and 30/30 runnable differential tests passed
  • real-bytecode corpus: 65 logs, 125 CALL memory-proof elisions across 23 contracts

6. Release note

Improve multipass JIT CALL-family memory expansion proof reuse.

@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.75 2.71 -1.3% PASS
total/main/blake2b_huff/empty 0.04 0.04 +3.5% PASS
total/main/blake2b_shifts/8415nulls 14.89 17.67 +18.6% PASS
total/main/sha1_divs/5311 8.63 8.92 +3.4% PASS
total/main/sha1_divs/empty 0.10 0.11 +2.6% PASS
total/main/sha1_shifts/5311 5.59 5.63 +0.6% PASS
total/main/sha1_shifts/empty 0.04 0.05 +6.0% PASS
total/main/snailtracer/benchmark 89.57 91.56 +2.2% PASS
total/main/structarray_alloc/nfts_rank 1.22 1.19 -2.1% PASS
total/main/swap_math/insufficient_liquidity 0.00 0.00 +18.0% PASS
total/main/swap_math/received 0.01 0.01 -5.5% PASS
total/main/swap_math/spent 0.01 0.01 -2.1% PASS
total/main/weierstrudel/1 0.32 0.33 +2.4% PASS
total/main/weierstrudel/15 3.70 3.75 +1.3% PASS
total/micro/JUMPDEST_n0/empty 3.01 3.03 +0.6% PASS
total/micro/jump_around/empty 0.11 0.10 -3.0% PASS
total/micro/loop_with_many_jumpdests/empty 66.59 66.53 -0.1% PASS
total/micro/memory_grow_mload/by1 0.18 0.19 +2.5% PASS
total/micro/memory_grow_mload/by16 0.20 0.20 -0.3% PASS
total/micro/memory_grow_mload/by32 0.12 0.12 +0.3% PASS
total/micro/memory_grow_mload/nogrow 0.09 0.09 -0.6% PASS
total/micro/memory_grow_mstore/by1 0.20 0.19 -4.9% PASS
total/micro/memory_grow_mstore/by16 0.12 0.12 -0.3% PASS
total/micro/memory_grow_mstore/by32 0.23 0.25 +6.2% PASS
total/micro/memory_grow_mstore/nogrow 0.19 0.18 -2.4% PASS
total/micro/signextend/one 0.26 0.27 +5.2% PASS
total/micro/signextend/zero 0.47 0.50 +5.4% PASS
total/synth/ADD/b0 2.25 2.25 -0.0% PASS
total/synth/ADD/b1 2.85 2.75 -3.7% PASS
total/synth/ADDRESS/a0 6.58 6.63 +0.7% PASS
total/synth/ADDRESS/a1 5.89 5.73 -2.7% PASS
total/synth/AND/b0 1.84 1.84 +0.0% PASS
total/synth/AND/b1 2.15 2.38 +10.7% PASS
total/synth/BYTE/b0 6.90 6.84 -0.9% PASS
total/synth/BYTE/b1 9.17 9.78 +6.7% PASS
total/synth/CALLDATASIZE/a0 5.08 4.80 -5.6% PASS
total/synth/CALLDATASIZE/a1 3.86 3.78 -2.2% PASS
total/synth/CALLER/a0 6.65 6.68 +0.4% PASS
total/synth/CALLER/a1 6.79 6.82 +0.7% PASS
total/synth/CALLVALUE/a0 3.94 3.91 -0.8% PASS
total/synth/CALLVALUE/a1 6.06 5.87 -3.1% PASS
total/synth/CODESIZE/a0 6.07 5.92 -2.5% PASS
total/synth/CODESIZE/a1 6.07 5.80 -4.3% PASS
total/synth/DUP1/d0 1.51 1.65 +9.3% PASS
total/synth/DUP1/d1 1.62 1.89 +16.9% PASS
total/synth/DUP10/d0 1.50 1.48 -1.3% PASS
total/synth/DUP10/d1 1.68 1.68 +0.5% PASS
total/synth/DUP11/d0 0.93 1.20 +28.8% PASS
total/synth/DUP11/d1 1.76 1.77 +0.5% PASS
total/synth/DUP12/d0 1.59 1.66 +4.7% PASS
total/synth/DUP12/d1 0.94 0.94 -0.0% PASS
total/synth/DUP13/d0 1.55 1.64 +5.2% PASS
total/synth/DUP13/d1 1.55 1.76 +13.5% PASS
total/synth/DUP14/d0 0.96 0.98 +1.8% PASS
total/synth/DUP14/d1 1.81 1.70 -5.8% PASS
total/synth/DUP15/d0 1.67 1.69 +1.5% PASS
total/synth/DUP15/d1 0.94 0.86 -8.7% PASS
total/synth/DUP16/d0 1.59 1.58 -0.2% PASS
total/synth/DUP16/d1 1.80 1.64 -8.7% PASS
total/synth/DUP2/d0 0.94 0.93 -1.3% PASS
total/synth/DUP2/d1 1.65 1.77 +7.0% PASS
total/synth/DUP3/d0 1.66 1.67 +0.8% PASS
total/synth/DUP3/d1 0.94 0.94 +0.1% PASS
total/synth/DUP4/d0 1.55 1.58 +2.2% PASS
total/synth/DUP4/d1 1.61 1.69 +4.7% PASS
total/synth/DUP5/d0 0.94 1.20 +27.9% PASS
total/synth/DUP5/d1 1.64 1.84 +12.0% PASS
total/synth/DUP6/d0 1.62 1.65 +1.5% PASS
total/synth/DUP6/d1 1.13 0.94 -17.1% PASS
total/synth/DUP7/d0 1.58 1.58 -0.4% PASS
total/synth/DUP7/d1 1.58 1.79 +13.7% PASS
total/synth/DUP8/d0 1.20 1.20 -0.3% PASS
total/synth/DUP8/d1 1.74 1.75 +0.7% PASS
total/synth/DUP9/d0 1.57 1.66 +5.8% PASS
total/synth/DUP9/d1 1.21 1.21 +0.2% PASS
total/synth/EQ/b0 5.37 5.51 +2.6% PASS
total/synth/EQ/b1 5.65 5.66 +0.2% PASS
total/synth/GAS/a0 3.92 3.94 +0.5% PASS
total/synth/GAS/a1 6.92 7.07 +2.2% PASS
total/synth/GT/b0 5.74 5.72 -0.3% PASS
total/synth/GT/b1 5.68 5.63 -0.8% PASS
total/synth/ISZERO/u0 8.44 8.40 -0.4% PASS
total/synth/JUMPDEST/n0 3.02 3.01 -0.2% PASS
total/synth/LT/b0 5.70 5.70 -0.0% PASS
total/synth/LT/b1 4.84 4.79 -1.1% PASS
total/synth/MSIZE/a0 6.04 6.02 -0.4% PASS
total/synth/MSIZE/a1 6.24 6.47 +3.6% PASS
total/synth/MUL/b0 6.39 6.36 -0.5% PASS
total/synth/MUL/b1 6.05 5.97 -1.4% PASS
total/synth/NOT/u0 1.99 2.00 +0.4% PASS
total/synth/OR/b0 2.16 2.21 +2.6% PASS
total/synth/OR/b1 1.77 1.78 +0.3% PASS
total/synth/PC/a0 5.07 4.98 -1.7% PASS
total/synth/PC/a1 3.98 3.61 -9.1% PASS
total/synth/PUSH1/p0 2.05 2.03 -0.9% PASS
total/synth/PUSH1/p1 1.78 1.87 +5.2% PASS
total/synth/PUSH10/p0 2.05 1.94 -5.3% PASS
total/synth/PUSH10/p1 1.64 1.59 -3.0% PASS
total/synth/PUSH11/p0 2.10 2.02 -4.0% PASS
total/synth/PUSH11/p1 2.05 2.12 +3.3% PASS
total/synth/PUSH12/p0 1.48 1.46 -1.3% PASS
total/synth/PUSH12/p1 2.23 2.17 -2.9% PASS
total/synth/PUSH13/p0 2.03 2.11 +4.0% PASS
total/synth/PUSH13/p1 1.87 1.62 -13.7% PASS
total/synth/PUSH14/p0 2.12 2.07 -2.1% PASS
total/synth/PUSH14/p1 2.09 2.10 +0.3% PASS
total/synth/PUSH15/p0 1.45 1.47 +0.8% PASS
total/synth/PUSH15/p1 2.27 2.04 -9.3% PASS
total/synth/PUSH16/p0 1.99 2.06 +3.6% PASS
total/synth/PUSH16/p1 1.90 1.87 -1.2% PASS
total/synth/PUSH17/p0 2.02 2.06 +2.2% PASS
total/synth/PUSH17/p1 2.08 2.22 +7.1% PASS
total/synth/PUSH18/p0 1.46 1.47 +1.0% PASS
total/synth/PUSH18/p1 2.28 2.13 -6.2% PASS
total/synth/PUSH19/p0 2.05 2.19 +6.7% PASS
total/synth/PUSH19/p1 1.88 1.59 -15.4% PASS
total/synth/PUSH2/p0 2.09 2.15 +2.8% PASS
total/synth/PUSH2/p1 2.13 2.30 +8.0% PASS
total/synth/PUSH20/p0 2.05 2.00 -2.4% PASS
total/synth/PUSH20/p1 2.12 2.23 +5.5% PASS
total/synth/PUSH21/p0 1.47 1.48 +0.8% PASS
total/synth/PUSH21/p1 2.26 2.11 -6.6% PASS
total/synth/PUSH22/p0 2.06 2.08 +1.1% PASS
total/synth/PUSH22/p1 1.89 1.88 -0.9% PASS
total/synth/PUSH23/p0 2.05 2.24 +8.9% PASS
total/synth/PUSH23/p1 2.18 2.30 +5.6% PASS
total/synth/PUSH24/p0 1.46 1.46 -0.2% PASS
total/synth/PUSH24/p1 2.12 2.15 +1.3% PASS
total/synth/PUSH25/p0 2.03 2.20 +8.5% PASS
total/synth/PUSH25/p1 1.88 1.88 -0.2% PASS
total/synth/PUSH26/p0 2.10 2.08 -1.1% PASS
total/synth/PUSH26/p1 2.14 2.26 +5.6% PASS
total/synth/PUSH27/p0 1.48 1.46 -1.3% PASS
total/synth/PUSH27/p1 2.28 2.40 +5.4% PASS
total/synth/PUSH28/p0 2.05 2.06 +0.7% PASS
total/synth/PUSH28/p1 1.88 1.88 -0.1% PASS
total/synth/PUSH29/p0 2.13 2.09 -1.8% PASS
total/synth/PUSH29/p1 2.21 2.11 -4.2% PASS
total/synth/PUSH3/p0 1.45 1.46 +0.2% PASS
total/synth/PUSH3/p1 2.25 2.15 -4.5% PASS
total/synth/PUSH30/p0 1.50 1.47 -1.9% PASS
total/synth/PUSH30/p1 2.31 2.21 -4.5% PASS
total/synth/PUSH31/p0 2.05 2.08 +1.8% PASS
total/synth/PUSH31/p1 1.63 1.61 -1.7% PASS
total/synth/PUSH32/p0 2.14 2.17 +1.4% PASS
total/synth/PUSH32/p1 2.16 2.07 -4.0% PASS
total/synth/PUSH4/p0 2.01 2.01 -0.0% PASS
total/synth/PUSH4/p1 1.61 1.88 +17.0% PASS
total/synth/PUSH5/p0 2.05 1.95 -5.0% PASS
total/synth/PUSH5/p1 2.12 2.13 +0.4% PASS
total/synth/PUSH6/p0 1.45 1.46 +0.4% PASS
total/synth/PUSH6/p1 2.29 2.28 -0.6% PASS
total/synth/PUSH7/p0 2.08 2.05 -1.5% PASS
total/synth/PUSH7/p1 1.88 1.60 -14.7% PASS
total/synth/PUSH8/p0 2.03 2.07 +2.1% PASS
total/synth/PUSH8/p1 2.14 2.26 +5.4% PASS
total/synth/PUSH9/p0 1.47 1.45 -0.8% PASS
total/synth/PUSH9/p1 2.25 2.28 +1.6% PASS
total/synth/RETURNDATASIZE/a0 3.43 3.45 +0.6% PASS
total/synth/RETURNDATASIZE/a1 5.94 5.95 +0.1% PASS
total/synth/SAR/b0 4.36 4.35 -0.1% PASS
total/synth/SAR/b1 7.69 7.97 +3.6% PASS
total/synth/SGT/b0 4.24 4.26 +0.3% PASS
total/synth/SGT/b1 3.67 3.64 -0.8% PASS
total/synth/SHL/b0 4.15 4.16 +0.1% PASS
total/synth/SHL/b1 1.83 1.82 -0.3% PASS
total/synth/SHR/b0 4.02 3.85 -4.2% PASS
total/synth/SHR/b1 3.10 3.25 +5.0% PASS
total/synth/SIGNEXTEND/b0 3.52 3.30 -6.2% PASS
total/synth/SIGNEXTEND/b1 6.00 5.93 -1.1% PASS
total/synth/SLT/b0 3.95 3.94 -0.2% PASS
total/synth/SLT/b1 4.26 4.32 +1.3% PASS
total/synth/SUB/b0 2.74 2.80 +2.2% PASS
total/synth/SUB/b1 2.79 2.81 +0.8% PASS
total/synth/SWAP1/s0 1.68 1.68 -0.1% PASS
total/synth/SWAP10/s0 1.70 1.70 +0.1% PASS
total/synth/SWAP11/s0 2.60 2.54 -2.1% PASS
total/synth/SWAP12/s0 2.58 2.57 -0.4% PASS
total/synth/SWAP13/s0 1.76 1.70 -3.6% PASS
total/synth/SWAP14/s0 2.59 2.67 +2.8% PASS
total/synth/SWAP15/s0 2.66 2.63 -1.1% PASS
total/synth/SWAP16/s0 1.70 1.70 +0.1% PASS
total/synth/SWAP2/s0 2.44 2.50 +2.4% PASS
total/synth/SWAP3/s0 2.52 2.61 +3.7% PASS
total/synth/SWAP4/s0 1.69 1.69 +0.0% PASS
total/synth/SWAP5/s0 2.53 2.62 +3.4% PASS
total/synth/SWAP6/s0 2.64 2.62 -0.5% PASS
total/synth/SWAP7/s0 1.69 1.69 +0.1% PASS
total/synth/SWAP8/s0 2.49 2.58 +3.9% PASS
total/synth/SWAP9/s0 2.55 2.50 -1.7% PASS
total/synth/XOR/b0 2.26 2.26 -0.1% PASS
total/synth/XOR/b1 2.28 2.23 -2.4% PASS
total/synth/loop_v1 8.92 9.11 +2.1% PASS
total/synth/loop_v2 9.34 9.06 -3.0% 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.10 1.11 +1.4% PASS
total/main/blake2b_huff/empty 0.02 0.02 +4.7% PASS
total/main/blake2b_shifts/8415nulls 4.47 4.44 -0.8% PASS
total/main/sha1_divs/5311 0.88 0.89 +1.3% PASS
total/main/sha1_divs/empty 0.01 0.01 -1.7% PASS
total/main/sha1_shifts/5311 0.75 0.74 -1.1% PASS
total/main/sha1_shifts/empty 0.01 0.01 -1.0% PASS
total/main/structarray_alloc/nfts_rank 0.28 0.28 +0.3% PASS
total/main/swap_math/insufficient_liquidity 0.00 0.00 +1.4% PASS
total/main/swap_math/received 0.01 0.01 -0.2% PASS
total/main/swap_math/spent 0.00 0.00 -4.3% PASS
total/main/weierstrudel/1 0.33 0.33 -1.3% PASS
total/main/weierstrudel/15 3.79 3.91 +3.1% PASS
total/micro/JUMPDEST_n0/empty 0.00 0.00 -0.8% PASS
total/micro/jump_around/empty 0.05 0.05 -0.6% PASS
total/micro/loop_with_many_jumpdests/empty 0.01 0.01 +5.0% PASS
total/micro/memory_grow_mload/by1 0.01 0.02 +1.8% PASS
total/micro/memory_grow_mload/by16 0.02 0.02 -0.3% PASS
total/micro/memory_grow_mload/by32 0.01 0.01 -0.0% PASS
total/micro/memory_grow_mload/nogrow 0.01 0.01 -0.2% PASS
total/micro/memory_grow_mstore/by1 0.09 0.09 -1.1% PASS
total/micro/memory_grow_mstore/by16 0.09 0.09 -0.5% PASS
total/micro/memory_grow_mstore/by32 0.18 0.18 -0.3% PASS
total/micro/memory_grow_mstore/nogrow 0.09 0.09 -1.2% PASS
total/micro/signextend/one 0.08 0.08 -0.9% PASS
total/micro/signextend/zero 0.18 0.18 +1.4% PASS
total/synth/ADD/b0 0.00 0.00 +0.3% PASS
total/synth/ADD/b1 0.00 0.00 -0.4% PASS
total/synth/ADDRESS/a0 0.21 0.20 -5.3% PASS
total/synth/ADDRESS/a1 0.15 0.15 +0.4% PASS
total/synth/AND/b0 0.00 0.00 +0.7% PASS
total/synth/AND/b1 0.00 0.00 +1.3% PASS
total/synth/BYTE/b0 0.00 0.00 +0.8% PASS
total/synth/BYTE/b1 0.00 0.00 -3.6% PASS
total/synth/CALLDATASIZE/a0 0.10 0.11 +7.9% PASS
total/synth/CALLDATASIZE/a1 0.07 0.07 +0.6% PASS
total/synth/CALLER/a0 0.22 0.20 -7.8% PASS
total/synth/CALLER/a1 0.21 0.19 -6.7% PASS
total/synth/CALLVALUE/a0 0.19 0.19 -0.3% PASS
total/synth/CALLVALUE/a1 0.34 0.24 -29.5% PASS
total/synth/CODESIZE/a0 0.10 0.11 +5.8% PASS
total/synth/CODESIZE/a1 0.10 0.10 +3.2% PASS
total/synth/DUP1/d0 0.00 0.00 -1.7% PASS
total/synth/DUP1/d1 0.00 0.00 +2.2% PASS
total/synth/DUP10/d0 0.00 0.00 +1.4% PASS
total/synth/DUP10/d1 0.00 0.00 +3.2% PASS
total/synth/DUP11/d0 0.00 0.00 +0.5% PASS
total/synth/DUP11/d1 0.00 0.00 -2.2% PASS
total/synth/DUP12/d0 0.00 0.00 +0.5% PASS
total/synth/DUP12/d1 0.00 0.00 +0.8% PASS
total/synth/DUP13/d0 0.00 0.00 +3.8% PASS
total/synth/DUP13/d1 0.00 0.00 +0.0% PASS
total/synth/DUP14/d0 0.00 0.00 +0.7% PASS
total/synth/DUP14/d1 0.00 0.00 -0.1% PASS
total/synth/DUP15/d0 0.00 0.00 -2.0% PASS
total/synth/DUP15/d1 0.00 0.00 +0.5% PASS
total/synth/DUP16/d0 0.00 0.00 +1.1% PASS
total/synth/DUP16/d1 0.00 0.00 +0.8% PASS
total/synth/DUP2/d0 0.00 0.00 +0.5% PASS
total/synth/DUP2/d1 0.00 0.00 -0.9% PASS
total/synth/DUP3/d0 0.00 0.00 +1.0% PASS
total/synth/DUP3/d1 0.00 0.00 -1.1% PASS
total/synth/DUP4/d0 0.00 0.00 +0.9% PASS
total/synth/DUP4/d1 0.00 0.00 -1.0% PASS
total/synth/DUP5/d0 0.00 0.00 +0.8% PASS
total/synth/DUP5/d1 0.00 0.00 -0.8% PASS
total/synth/DUP6/d0 0.00 0.00 +1.2% PASS
total/synth/DUP6/d1 0.00 0.00 +0.3% PASS
total/synth/DUP7/d0 0.00 0.00 -0.3% PASS
total/synth/DUP7/d1 0.00 0.00 +0.4% PASS
total/synth/DUP8/d0 0.00 0.00 +1.4% PASS
total/synth/DUP8/d1 0.00 0.00 -3.8% PASS
total/synth/DUP9/d0 0.00 0.00 +0.1% PASS
total/synth/DUP9/d1 0.00 0.00 -0.1% PASS
total/synth/EQ/b0 0.00 0.00 +2.4% PASS
total/synth/EQ/b1 0.00 0.00 -0.5% PASS
total/synth/GAS/a0 0.86 0.86 +0.0% PASS
total/synth/GAS/a1 1.03 1.02 -0.4% PASS
total/synth/GT/b0 0.00 0.00 -0.8% PASS
total/synth/GT/b1 0.00 0.00 +0.4% PASS
total/synth/ISZERO/u0 0.00 0.00 +3.6% PASS
total/synth/JUMPDEST/n0 0.00 0.00 -1.2% PASS
total/synth/LT/b0 0.00 0.00 -0.6% 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.3% PASS
total/synth/MUL/b0 0.00 0.00 +0.6% PASS
total/synth/MUL/b1 0.00 0.00 +1.2% PASS
total/synth/NOT/u0 0.00 0.00 +2.2% PASS
total/synth/OR/b0 0.00 0.00 -0.3% PASS
total/synth/OR/b1 0.00 0.00 +0.4% PASS
total/synth/PC/a0 0.00 0.00 +0.2% PASS
total/synth/PC/a1 0.00 0.00 +0.7% PASS
total/synth/PUSH1/p0 0.00 0.00 +1.7% PASS
total/synth/PUSH1/p1 0.00 0.00 +0.3% PASS
total/synth/PUSH10/p0 0.00 0.00 +0.4% PASS
total/synth/PUSH10/p1 0.00 0.00 +2.7% PASS
total/synth/PUSH11/p0 0.00 0.00 -3.0% PASS
total/synth/PUSH11/p1 0.00 0.00 +2.7% PASS
total/synth/PUSH12/p0 0.00 0.00 -1.3% PASS
total/synth/PUSH12/p1 0.00 0.00 -1.1% PASS
total/synth/PUSH13/p0 0.00 0.00 -0.8% PASS
total/synth/PUSH13/p1 0.00 0.00 +3.1% PASS
total/synth/PUSH14/p0 0.00 0.00 -2.1% PASS
total/synth/PUSH14/p1 0.00 0.00 +0.9% PASS
total/synth/PUSH15/p0 0.00 0.00 -0.3% PASS
total/synth/PUSH15/p1 0.00 0.00 +0.7% PASS
total/synth/PUSH16/p0 0.00 0.00 +0.1% PASS
total/synth/PUSH16/p1 0.00 0.00 +0.4% PASS
total/synth/PUSH17/p0 0.00 0.00 +0.9% PASS
total/synth/PUSH17/p1 0.00 0.00 -1.6% PASS
total/synth/PUSH18/p0 0.00 0.00 -0.9% PASS
total/synth/PUSH18/p1 0.00 0.00 +0.3% PASS
total/synth/PUSH19/p0 0.00 0.00 +2.9% PASS
total/synth/PUSH19/p1 0.00 0.00 -1.8% PASS
total/synth/PUSH2/p0 0.00 0.00 +4.8% PASS
total/synth/PUSH2/p1 0.00 0.00 -6.2% PASS
total/synth/PUSH20/p0 0.00 0.00 +1.8% PASS
total/synth/PUSH20/p1 0.00 0.00 +0.1% PASS
total/synth/PUSH21/p0 0.00 0.00 -0.3% PASS
total/synth/PUSH21/p1 0.00 0.00 +2.3% PASS
total/synth/PUSH22/p0 1.81 1.83 +0.8% PASS
total/synth/PUSH22/p1 1.61 1.60 -0.6% PASS
total/synth/PUSH23/p0 1.82 1.87 +2.8% PASS
total/synth/PUSH23/p1 1.93 1.89 -2.4% PASS
total/synth/PUSH24/p0 1.46 1.47 +0.7% PASS
total/synth/PUSH24/p1 1.89 1.94 +2.7% PASS
total/synth/PUSH25/p0 1.82 1.81 -0.6% PASS
total/synth/PUSH25/p1 1.62 1.69 +4.1% PASS
total/synth/PUSH26/p0 1.83 1.84 +0.6% PASS
total/synth/PUSH26/p1 1.87 1.86 -0.5% PASS
total/synth/PUSH27/p0 1.46 1.47 +0.1% PASS
total/synth/PUSH27/p1 1.89 1.87 -1.4% PASS
total/synth/PUSH28/p0 1.86 1.91 +2.4% PASS
total/synth/PUSH28/p1 1.60 1.60 +0.5% PASS
total/synth/PUSH29/p0 1.88 1.81 -3.7% PASS
total/synth/PUSH29/p1 1.87 1.91 +2.0% PASS
total/synth/PUSH3/p0 0.00 0.00 +0.3% PASS
total/synth/PUSH3/p1 0.00 0.00 -1.0% PASS
total/synth/PUSH30/p0 1.47 1.49 +1.3% PASS
total/synth/PUSH30/p1 1.90 1.93 +1.6% PASS
total/synth/PUSH31/p0 1.82 1.97 +8.4% PASS
total/synth/PUSH31/p1 1.62 1.75 +7.4% PASS
total/synth/PUSH32/p0 1.77 1.88 +5.9% PASS
total/synth/PUSH32/p1 1.94 1.89 -2.7% PASS
total/synth/PUSH4/p0 0.00 0.00 +0.7% PASS
total/synth/PUSH4/p1 0.00 0.00 -0.7% PASS
total/synth/PUSH5/p0 0.00 0.00 +0.8% PASS
total/synth/PUSH5/p1 0.00 0.00 +1.6% PASS
total/synth/PUSH6/p0 0.00 0.00 +1.5% PASS
total/synth/PUSH6/p1 0.00 0.00 +2.3% PASS
total/synth/PUSH7/p0 0.00 0.00 -1.3% PASS
total/synth/PUSH7/p1 0.00 0.00 +5.5% PASS
total/synth/PUSH8/p0 0.00 0.00 -2.5% PASS
total/synth/PUSH8/p1 0.00 0.00 +1.3% PASS
total/synth/PUSH9/p0 0.00 0.00 -1.2% PASS
total/synth/PUSH9/p1 0.00 0.00 +0.8% PASS
total/synth/RETURNDATASIZE/a0 0.03 0.03 -0.4% PASS
total/synth/RETURNDATASIZE/a1 0.06 0.05 -18.3% PASS
total/synth/SAR/b0 0.00 0.00 -0.4% PASS
total/synth/SAR/b1 0.00 0.00 +0.9% PASS
total/synth/SGT/b0 0.00 0.00 +1.9% PASS
total/synth/SGT/b1 0.00 0.00 +0.7% PASS
total/synth/SHL/b0 0.00 0.00 +0.0% PASS
total/synth/SHL/b1 0.00 0.00 +0.6% PASS
total/synth/SHR/b0 0.00 0.00 -2.4% PASS
total/synth/SHR/b1 0.00 0.00 +2.9% PASS
total/synth/SIGNEXTEND/b0 0.00 0.00 +0.7% PASS
total/synth/SIGNEXTEND/b1 0.00 0.00 -1.0% PASS
total/synth/SLT/b0 0.00 0.00 -0.0% PASS
total/synth/SLT/b1 0.00 0.00 +0.9% PASS
total/synth/SUB/b0 0.00 0.00 -0.8% PASS
total/synth/SUB/b1 0.00 0.00 -2.0% PASS
total/synth/SWAP1/s0 0.00 0.00 +0.7% PASS
total/synth/SWAP10/s0 0.00 0.00 +0.7% PASS
total/synth/SWAP11/s0 0.00 0.00 +1.2% PASS
total/synth/SWAP12/s0 0.00 0.00 +3.6% PASS
total/synth/SWAP13/s0 0.00 0.00 +1.3% PASS
total/synth/SWAP14/s0 0.00 0.00 -4.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.1% PASS
total/synth/SWAP3/s0 0.00 0.00 -0.1% PASS
total/synth/SWAP4/s0 0.00 0.00 -0.3% PASS
total/synth/SWAP5/s0 0.00 0.00 +2.3% PASS
total/synth/SWAP6/s0 0.00 0.00 -1.6% PASS
total/synth/SWAP7/s0 0.00 0.00 +0.5% PASS
total/synth/SWAP8/s0 0.00 0.00 -2.8% PASS
total/synth/SWAP9/s0 0.00 0.00 +0.1% PASS
total/synth/XOR/b0 0.00 0.00 -0.1% PASS
total/synth/XOR/b1 0.00 0.00 -0.2% PASS
total/synth/loop_v1 8.41 8.35 -0.7% PASS
total/synth/loop_v2 9.23 8.28 -10.3% PASS

Summary: 193 benchmarks, 0 regressions


@zoowii
zoowii merged commit 8268abb into DTVMStack:main Jul 29, 2026
17 checks passed
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