Skip to content

test_worst_binop_simple()

Documentation for tests/benchmark/test_worst_compute.py::test_worst_binop_simple@v5.0.0.

Generate fixtures for these test cases for Osaka with:

fill -v tests/benchmark/test_worst_compute.py::test_worst_binop_simple --fork Osaka

Test running a block with as many binary instructions (takes two args, produces one value) as possible. The execution starts with two initial values on the stack, and the stack is balanced by the DUP2 instruction.

Source code in tests/benchmark/test_worst_compute.py
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
@pytest.mark.valid_from("Cancun")
@pytest.mark.parametrize(
    "opcode,opcode_args",
    [
        (
            Op.ADD,
            DEFAULT_BINOP_ARGS,
        ),
        (
            Op.MUL,
            DEFAULT_BINOP_ARGS,
        ),
        (
            # This has the cycle of 2, after two SUBs values are back to initials.
            Op.SUB,
            DEFAULT_BINOP_ARGS,
        ),
        (
            # This has the cycle of 2:
            # v[0] = a // b
            # v[1] = a // v[0] = a // (a // b) = b
            # v[2] = a // b
            Op.DIV,
            (
                0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F,
                # We want the first divisor to be slightly bigger than 2**128:
                # this is the worst case for the division algorithm with optimized paths
                # for division by 1 and 2 words.
                0x100000000000000000000000000000033,
            ),
        ),
        (
            # This has the cycle of 2, see above.
            Op.DIV,
            (
                0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F,
                # We want the first divisor to be slightly bigger than 2**64:
                # this is the worst case for the division algorithm with an optimized path
                # for division by 1 word.
                0x10000000000000033,
            ),
        ),
        (
            # Same as DIV-0, but the numerator made positive, and the divisor made negative.
            Op.SDIV,
            (
                0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F,
                0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD,
            ),
        ),
        (
            # Same as DIV-1, but the numerator made positive, and the divisor made negative.
            Op.SDIV,
            (
                0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F,
                0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFCD,
            ),
        ),
        (
            # This scenario is not suitable for MOD because the values quickly become 0.
            Op.MOD,
            DEFAULT_BINOP_ARGS,
        ),
        (
            # This scenario is not suitable for SMOD because the values quickly become 0.
            Op.SMOD,
            DEFAULT_BINOP_ARGS,
        ),
        (
            # This keeps the values unchanged, pow(2**256-1, 2**256-1, 2**256) == 2**256-1.
            Op.EXP,
            (
                0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF,
                0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF,
            ),
        ),
        (
            # Not great because we always sign-extend the 4 bytes.
            Op.SIGNEXTEND,
            (
                3,
                0xFFDADADA,  # Negative to have more work.
            ),
        ),
        (
            Op.LT,  # Keeps getting result 1.
            (0, 1),
        ),
        (
            Op.GT,  # Keeps getting result 0.
            (0, 1),
        ),
        (
            Op.SLT,  # Keeps getting result 1.
            (0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF, 1),
        ),
        (
            Op.SGT,  # Keeps getting result 0.
            (0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF, 1),
        ),
        (
            # The worst case is if the arguments are equal (no early return),
            # so let's keep it comparing ones.
            Op.EQ,
            (1, 1),
        ),
        (
            Op.AND,
            DEFAULT_BINOP_ARGS,
        ),
        (
            Op.OR,
            DEFAULT_BINOP_ARGS,
        ),
        (
            Op.XOR,
            DEFAULT_BINOP_ARGS,
        ),
        (
            Op.BYTE,  # Keep extracting the last byte: 0x2F.
            (31, 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F),
        ),
        (
            Op.SHL,  # Shift by 1 until getting 0.
            (1, 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F),
        ),
        (
            Op.SHR,  # Shift by 1 until getting 0.
            (1, 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F),
        ),
        (
            Op.SAR,  # Shift by 1 until getting -1.
            (1, 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F),
        ),
    ],
    ids=lambda param: "" if isinstance(param, tuple) else param,
)
def test_worst_binop_simple(
    state_test: StateTestFiller,
    pre: Alloc,
    opcode: Op,
    fork: Fork,
    opcode_args: tuple[int, int],
    gas_benchmark_value: int,
):
    """
    Test running a block with as many binary instructions (takes two args, produces one value)
    as possible. The execution starts with two initial values on the stack, and the stack is
    balanced by the DUP2 instruction.
    """
    max_code_size = fork.max_code_size()

    tx_data = b"".join(arg.to_bytes(32, byteorder="big") for arg in opcode_args)

    code_prefix = Op.JUMPDEST + Op.CALLDATALOAD(0) + Op.CALLDATALOAD(32)
    code_suffix = Op.POP + Op.POP + Op.PUSH0 + Op.JUMP
    code_body_len = max_code_size - len(code_prefix) - len(code_suffix)
    code_body = (Op.DUP2 + opcode) * (code_body_len // 2)
    code = code_prefix + code_body + code_suffix
    assert len(code) == max_code_size - 1

    tx = Transaction(
        to=pre.deploy_contract(code=code),
        data=tx_data,
        gas_limit=gas_benchmark_value,
        sender=pre.fund_eoa(),
    )

    state_test(
        pre=pre,
        post={},
        tx=tx,
    )

Parametrized Test Cases

The interactive table below is also available as a standalone page.

Test ID (Abbreviated) opcode opcode_args
...fork_Cancun-state_test-opcode_ADD- ADD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_MUL- MUL (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_SUB- SUB (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_DIV-0 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 340282366920938463463374607431768211507)
...fork_Cancun-state_test-opcode_DIV-1 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 18446744073709551667)
...fork_Cancun-state_test-opcode_SDIV-0 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907852929702298719625575994209400481361428429)
...fork_Cancun-state_test-opcode_SDIV-1 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907853269984665640564039439137263839420088269)
...fork_Cancun-state_test-opcode_MOD- MOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_SMOD- SMOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_EXP- EXP (115792089237316195423570985008687907853269984665640564039457584007913129639935, 115792089237316195423570985008687907853269984665640564039457584007913129639935)
...fork_Cancun-state_test-opcode_SIGNEXTEND- SIGNEXTEND (3, 4292532954)
...fork_Cancun-state_test-opcode_LT- LT (0, 1)
...fork_Cancun-state_test-opcode_GT- GT (0, 1)
...fork_Cancun-state_test-opcode_SLT- SLT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Cancun-state_test-opcode_SGT- SGT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Cancun-state_test-opcode_EQ- EQ (1, 1)
...fork_Cancun-state_test-opcode_AND- AND (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_OR- OR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_XOR- XOR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-state_test-opcode_BYTE- BYTE (31, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-state_test-opcode_SHL- SHL (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-state_test-opcode_SHR- SHR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-state_test-opcode_SAR- SAR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-blockchain_test_from_state_test-opcode_ADD- ADD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_MUL- MUL (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_SUB- SUB (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_DIV-0 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 340282366920938463463374607431768211507)
...fork_Cancun-blockchain_test_from_state_test-opcode_DIV-1 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 18446744073709551667)
...fork_Cancun-blockchain_test_from_state_test-opcode_SDIV-0 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907852929702298719625575994209400481361428429)
...fork_Cancun-blockchain_test_from_state_test-opcode_SDIV-1 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907853269984665640564039439137263839420088269)
...fork_Cancun-blockchain_test_from_state_test-opcode_MOD- MOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_SMOD- SMOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_EXP- EXP (115792089237316195423570985008687907853269984665640564039457584007913129639935, 115792089237316195423570985008687907853269984665640564039457584007913129639935)
...fork_Cancun-blockchain_test_from_state_test-opcode_SIGNEXTEND- SIGNEXTEND (3, 4292532954)
...fork_Cancun-blockchain_test_from_state_test-opcode_LT- LT (0, 1)
...fork_Cancun-blockchain_test_from_state_test-opcode_GT- GT (0, 1)
...fork_Cancun-blockchain_test_from_state_test-opcode_SLT- SLT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Cancun-blockchain_test_from_state_test-opcode_SGT- SGT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Cancun-blockchain_test_from_state_test-opcode_EQ- EQ (1, 1)
...fork_Cancun-blockchain_test_from_state_test-opcode_AND- AND (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_OR- OR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_XOR- XOR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Cancun-blockchain_test_from_state_test-opcode_BYTE- BYTE (31, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-blockchain_test_from_state_test-opcode_SHL- SHL (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-blockchain_test_from_state_test-opcode_SHR- SHR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Cancun-blockchain_test_from_state_test-opcode_SAR- SAR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-state_test-opcode_ADD- ADD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_MUL- MUL (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_SUB- SUB (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_DIV-0 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 340282366920938463463374607431768211507)
...fork_Prague-state_test-opcode_DIV-1 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 18446744073709551667)
...fork_Prague-state_test-opcode_SDIV-0 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907852929702298719625575994209400481361428429)
...fork_Prague-state_test-opcode_SDIV-1 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907853269984665640564039439137263839420088269)
...fork_Prague-state_test-opcode_MOD- MOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_SMOD- SMOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_EXP- EXP (115792089237316195423570985008687907853269984665640564039457584007913129639935, 115792089237316195423570985008687907853269984665640564039457584007913129639935)
...fork_Prague-state_test-opcode_SIGNEXTEND- SIGNEXTEND (3, 4292532954)
...fork_Prague-state_test-opcode_LT- LT (0, 1)
...fork_Prague-state_test-opcode_GT- GT (0, 1)
...fork_Prague-state_test-opcode_SLT- SLT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Prague-state_test-opcode_SGT- SGT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Prague-state_test-opcode_EQ- EQ (1, 1)
...fork_Prague-state_test-opcode_AND- AND (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_OR- OR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_XOR- XOR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-state_test-opcode_BYTE- BYTE (31, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-state_test-opcode_SHL- SHL (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-state_test-opcode_SHR- SHR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-state_test-opcode_SAR- SAR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-blockchain_test_from_state_test-opcode_ADD- ADD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_MUL- MUL (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_SUB- SUB (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_DIV-0 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 340282366920938463463374607431768211507)
...fork_Prague-blockchain_test_from_state_test-opcode_DIV-1 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 18446744073709551667)
...fork_Prague-blockchain_test_from_state_test-opcode_SDIV-0 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907852929702298719625575994209400481361428429)
...fork_Prague-blockchain_test_from_state_test-opcode_SDIV-1 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907853269984665640564039439137263839420088269)
...fork_Prague-blockchain_test_from_state_test-opcode_MOD- MOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_SMOD- SMOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_EXP- EXP (115792089237316195423570985008687907853269984665640564039457584007913129639935, 115792089237316195423570985008687907853269984665640564039457584007913129639935)
...fork_Prague-blockchain_test_from_state_test-opcode_SIGNEXTEND- SIGNEXTEND (3, 4292532954)
...fork_Prague-blockchain_test_from_state_test-opcode_LT- LT (0, 1)
...fork_Prague-blockchain_test_from_state_test-opcode_GT- GT (0, 1)
...fork_Prague-blockchain_test_from_state_test-opcode_SLT- SLT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Prague-blockchain_test_from_state_test-opcode_SGT- SGT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Prague-blockchain_test_from_state_test-opcode_EQ- EQ (1, 1)
...fork_Prague-blockchain_test_from_state_test-opcode_AND- AND (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_OR- OR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_XOR- XOR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Prague-blockchain_test_from_state_test-opcode_BYTE- BYTE (31, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-blockchain_test_from_state_test-opcode_SHL- SHL (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-blockchain_test_from_state_test-opcode_SHR- SHR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Prague-blockchain_test_from_state_test-opcode_SAR- SAR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-state_test-opcode_ADD- ADD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_MUL- MUL (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_SUB- SUB (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_DIV-0 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 340282366920938463463374607431768211507)
...fork_Osaka-state_test-opcode_DIV-1 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 18446744073709551667)
...fork_Osaka-state_test-opcode_SDIV-0 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907852929702298719625575994209400481361428429)
...fork_Osaka-state_test-opcode_SDIV-1 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907853269984665640564039439137263839420088269)
...fork_Osaka-state_test-opcode_MOD- MOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_SMOD- SMOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_EXP- EXP (115792089237316195423570985008687907853269984665640564039457584007913129639935, 115792089237316195423570985008687907853269984665640564039457584007913129639935)
...fork_Osaka-state_test-opcode_SIGNEXTEND- SIGNEXTEND (3, 4292532954)
...fork_Osaka-state_test-opcode_LT- LT (0, 1)
...fork_Osaka-state_test-opcode_GT- GT (0, 1)
...fork_Osaka-state_test-opcode_SLT- SLT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Osaka-state_test-opcode_SGT- SGT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Osaka-state_test-opcode_EQ- EQ (1, 1)
...fork_Osaka-state_test-opcode_AND- AND (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_OR- OR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_XOR- XOR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-state_test-opcode_BYTE- BYTE (31, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-state_test-opcode_SHL- SHL (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-state_test-opcode_SHR- SHR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-state_test-opcode_SAR- SAR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-blockchain_test_from_state_test-opcode_ADD- ADD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_MUL- MUL (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_SUB- SUB (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_DIV-0 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 340282366920938463463374607431768211507)
...fork_Osaka-blockchain_test_from_state_test-opcode_DIV-1 DIV (115792089237316195423570985008687907853269984665640564039457584007908834671663, 18446744073709551667)
...fork_Osaka-blockchain_test_from_state_test-opcode_SDIV-0 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907852929702298719625575994209400481361428429)
...fork_Osaka-blockchain_test_from_state_test-opcode_SDIV-1 SDIV (57896044618658097711785492504343953926634992332820282019728792003952269851695, 115792089237316195423570985008687907853269984665640564039439137263839420088269)
...fork_Osaka-blockchain_test_from_state_test-opcode_MOD- MOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_SMOD- SMOD (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_EXP- EXP (115792089237316195423570985008687907853269984665640564039457584007913129639935, 115792089237316195423570985008687907853269984665640564039457584007913129639935)
...fork_Osaka-blockchain_test_from_state_test-opcode_SIGNEXTEND- SIGNEXTEND (3, 4292532954)
...fork_Osaka-blockchain_test_from_state_test-opcode_LT- LT (0, 1)
...fork_Osaka-blockchain_test_from_state_test-opcode_GT- GT (0, 1)
...fork_Osaka-blockchain_test_from_state_test-opcode_SLT- SLT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Osaka-blockchain_test_from_state_test-opcode_SGT- SGT (115792089237316195423570985008687907853269984665640564039457584007913129639935, 1)
...fork_Osaka-blockchain_test_from_state_test-opcode_EQ- EQ (1, 1)
...fork_Osaka-blockchain_test_from_state_test-opcode_AND- AND (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_OR- OR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_XOR- XOR (115792089237316195423570985008687907853269984665640564039457584007908834671663, 52435875175126190479447740508185965837690552500527637822603658699938581184513)
...fork_Osaka-blockchain_test_from_state_test-opcode_BYTE- BYTE (31, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-blockchain_test_from_state_test-opcode_SHL- SHL (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-blockchain_test_from_state_test-opcode_SHR- SHR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)
...fork_Osaka-blockchain_test_from_state_test-opcode_SAR- SAR (1, 115792089237316195423570985008687907853269984665640564039457584007908834671663)