ref-fvm icon indicating copy to clipboard operation
ref-fvm copied to clipboard

FEVM | Eth Compliance Test | 38-stReturnDataTest | use-case Failures

Open shamb0 opened this issue 2 years ago • 2 comments

Following use-cases are failed.

  • Hit with error EVM_CONTRACT_UNDEFINED_INSTRUCTION (ExitCode::35)
Test ID Use-Case
TID-38-05 clearReturnBuffer
TID-38-07 modexp_modsize0_returndatasize
TID-38-09 returndatacopy_after_failing_callcode
TID-38-13 returndatacopy_after_successful_callcode
TID-38-28 returndatasize_after_failing_callcode
TID-38-32 returndatasize_after_successful_callcode
TID-38-39 revertRetDataSize
TID-38-40 subcallReturnMoreThenExpected
  • Hit with error EVM_CONTRACT_ILLEGAL_MEMORY_ACCESS (ExitCode::38)
Test ID Use-Case
TID-38-16 returndatacopy_afterFailing_create
TID-38-11 returndatacopy_after_failing_staticcall
TID-38-12 returndatacopy_after_revert_in_staticcall
TID-38-14 returndatacopy_after_successful_delegatecall
TID-38-15 returndatacopy_after_successful_staticcall
TID-38-18 returndatacopy_following_create
TID-38-19 returndatacopy_following_failing_call
TID-38-21 returndatacopy_following_revert_in_create
TID-38-22 returndatacopy_following_successful_create
TID-38-23 returndatacopy_following_too_big_transfer
TID-38-24 returndatacopy_initial
TID-38-25 returndatacopy_initial_256
TID-38-26 returndatacopy_initial_big_sum
TID-38-27 returndatacopy_overrun
TID-38-41 tooLongReturnDataCopy

shamb0 avatar Jan 30 '23 15:01 shamb0

=== KO Status ===
Count :: 23
{
    "returndatacopy_overrun.json::returndatacopy_overrun": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_following_too_big_transfer.json::returndatacopy_following_too_big_transfer": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_following_successful_create.json::returndatacopy_following_successful_create": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_after_successful_staticcall.json::returndatacopy_after_successful_staticcall": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatasize_after_failing_callcode.json::returndatasize_after_failing_callcode": [
        "Istanbul | 0 | ExitCode { value: 35 }",
        "Berlin | 0 | ExitCode { value: 35 }",
        "London | 0 | ExitCode { value: 35 }",
        "Merge | 0 | ExitCode { value: 35 }",
    ],
    "returndatacopy_following_failing_call.json::returndatacopy_following_failing_call": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_after_revert_in_staticcall.json::returndatacopy_after_revert_in_staticcall": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_initial_big_sum.json::returndatacopy_initial_big_sum": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_following_create.json::returndatacopy_following_create": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "subcallReturnMoreThenExpected.json::subcallReturnMoreThenExpected": [
        "Istanbul | 0 | ExitCode { value: 35 }",
        "Berlin | 0 | ExitCode { value: 35 }",
        "London | 0 | ExitCode { value: 35 }",
        "Merge | 0 | ExitCode { value: 35 }",
    ],
    "revertRetDataSize.json::revertRetDataSize": [
        "Istanbul | 1 | ExitCode { value: 35 }",
        "Istanbul | 7 | ExitCode { value: 35 }",
        "Istanbul | 13 | ExitCode { value: 35 }",
        "Istanbul | 19 | ExitCode { value: 35 }",
        "Istanbul | 25 | ExitCode { value: 35 }",
        "Istanbul | 31 | ExitCode { value: 35 }",
        "Berlin | 1 | ExitCode { value: 35 }",
        "Berlin | 7 | ExitCode { value: 35 }",
        "Berlin | 13 | ExitCode { value: 35 }",
        "Berlin | 19 | ExitCode { value: 35 }",
        "Berlin | 25 | ExitCode { value: 35 }",
        "Berlin | 31 | ExitCode { value: 35 }",
        "London | 1 | ExitCode { value: 35 }",
        "London | 7 | ExitCode { value: 35 }",
        "London | 13 | ExitCode { value: 35 }",
        "London | 19 | ExitCode { value: 35 }",
        "London | 25 | ExitCode { value: 35 }",
        "London | 31 | ExitCode { value: 35 }",
        "Merge | 1 | ExitCode { value: 35 }",
        "Merge | 7 | ExitCode { value: 35 }",
        "Merge | 13 | ExitCode { value: 35 }",
        "Merge | 19 | ExitCode { value: 35 }",
        "Merge | 25 | ExitCode { value: 35 }",
        "Merge | 31 | ExitCode { value: 35 }",
    ],
    "tooLongReturnDataCopy.json::tooLongReturnDataCopy": [
        "London | 1 | ExitCode { value: 38 }",
        "London | 4 | ExitCode { value: 38 }",
        "London | 6 | ExitCode { value: 38 }",
        "London | 8 | ExitCode { value: 38 }",
        "London | 9 | ExitCode { value: 38 }",
        "London | 10 | ExitCode { value: 38 }",
        "London | 11 | ExitCode { value: 38 }",
        "London | 13 | ExitCode { value: 38 }",
        "London | 16 | ExitCode { value: 38 }",
        "London | 18 | ExitCode { value: 38 }",
        "London | 20 | ExitCode { value: 38 }",
        "London | 21 | ExitCode { value: 38 }",
        "London | 22 | ExitCode { value: 38 }",
        "London | 23 | ExitCode { value: 38 }",
        "Merge | 1 | ExitCode { value: 38 }",
        "Merge | 4 | ExitCode { value: 38 }",
        "Merge | 6 | ExitCode { value: 38 }",
        "Merge | 8 | ExitCode { value: 38 }",
        "Merge | 9 | ExitCode { value: 38 }",
        "Merge | 10 | ExitCode { value: 38 }",
        "Merge | 11 | ExitCode { value: 38 }",
        "Merge | 13 | ExitCode { value: 38 }",
        "Merge | 16 | ExitCode { value: 38 }",
        "Merge | 18 | ExitCode { value: 38 }",
        "Merge | 20 | ExitCode { value: 38 }",
        "Merge | 21 | ExitCode { value: 38 }",
        "Merge | 22 | ExitCode { value: 38 }",
        "Merge | 23 | ExitCode { value: 38 }",
    ],
    "returndatacopy_following_revert_in_create.json::returndatacopy_following_revert_in_create": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_afterFailing_create.json::returndatacopy_afterFailing_create": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_initial_256.json::returndatacopy_initial_256": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Istanbul | 1 | ExitCode { value: 38 }",
        "Istanbul | 2 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "Berlin | 1 | ExitCode { value: 38 }",
        "Berlin | 2 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "London | 1 | ExitCode { value: 38 }",
        "London | 2 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
        "Merge | 1 | ExitCode { value: 38 }",
        "Merge | 2 | ExitCode { value: 38 }",
    ],
    "returndatacopy_after_successful_delegatecall.json::returndatacopy_after_successful_delegatecall": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_after_successful_callcode.json::returndatacopy_after_successful_callcode": [
        "Istanbul | 0 | ExitCode { value: 35 }",
        "Berlin | 0 | ExitCode { value: 35 }",
        "London | 0 | ExitCode { value: 35 }",
        "Merge | 0 | ExitCode { value: 35 }",
    ],
    "returndatacopy_initial.json::returndatacopy_initial": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "returndatacopy_after_failing_staticcall.json::returndatacopy_after_failing_staticcall": [
        "Istanbul | 0 | ExitCode { value: 38 }",
        "Berlin | 0 | ExitCode { value: 38 }",
        "London | 0 | ExitCode { value: 38 }",
        "Merge | 0 | ExitCode { value: 38 }",
    ],
    "modexp_modsize0_returndatasize.json::modexp_modsize0_returndatasize": [
        "Istanbul | 0 | ExitCode { value: 35 }",
        "Istanbul | 1 | ExitCode { value: 35 }",
        "Istanbul | 2 | ExitCode { value: 35 }",
        "Istanbul | 3 | ExitCode { value: 35 }",
        "Istanbul | 4 | ExitCode { value: 35 }",
        "Berlin | 0 | ExitCode { value: 35 }",
        "Berlin | 1 | ExitCode { value: 35 }",
        "Berlin | 2 | ExitCode { value: 35 }",
        "Berlin | 3 | ExitCode { value: 35 }",
        "Berlin | 4 | ExitCode { value: 35 }",
        "London | 0 | ExitCode { value: 35 }",
        "London | 1 | ExitCode { value: 35 }",
        "London | 2 | ExitCode { value: 35 }",
        "London | 3 | ExitCode { value: 35 }",
        "London | 4 | ExitCode { value: 35 }",
        "Merge | 0 | ExitCode { value: 35 }",
        "Merge | 1 | ExitCode { value: 35 }",
        "Merge | 2 | ExitCode { value: 35 }",
        "Merge | 3 | ExitCode { value: 35 }",
        "Merge | 4 | ExitCode { value: 35 }",
    ],
    "returndatacopy_after_failing_callcode.json::returndatacopy_after_failing_callcode": [
        "Istanbul | 0 | ExitCode { value: 35 }",
        "Berlin | 0 | ExitCode { value: 35 }",
        "London | 0 | ExitCode { value: 35 }",
        "Merge | 0 | ExitCode { value: 35 }",
    ],
    "returndatasize_after_successful_callcode.json::returndatasize_after_successful_callcode": [
        "Istanbul | 0 | ExitCode { value: 35 }",
        "Berlin | 0 | ExitCode { value: 35 }",
        "London | 0 | ExitCode { value: 35 }",
        "Merge | 0 | ExitCode { value: 35 }",
    ],
    "clearReturnBuffer.json::clearReturnBuffer": [
        "London | 42 | ExitCode { value: 35 }",
        "London | 43 | ExitCode { value: 35 }",
        "London | 44 | ExitCode { value: 35 }",
        "London | 45 | ExitCode { value: 35 }",
        "London | 46 | ExitCode { value: 35 }",
        "London | 47 | ExitCode { value: 35 }",
        "London | 48 | ExitCode { value: 35 }",
        "London | 49 | ExitCode { value: 35 }",
        "London | 50 | ExitCode { value: 35 }",
        "London | 51 | ExitCode { value: 35 }",
        "London | 52 | ExitCode { value: 35 }",
        "London | 53 | ExitCode { value: 35 }",
        "London | 54 | ExitCode { value: 35 }",
        "London | 55 | ExitCode { value: 35 }",
        "London | 98 | ExitCode { value: 35 }",
        "London | 99 | ExitCode { value: 35 }",
        "London | 100 | ExitCode { value: 35 }",
        "London | 101 | ExitCode { value: 35 }",
        "London | 102 | ExitCode { value: 35 }",
        "London | 103 | ExitCode { value: 35 }",
        "London | 104 | ExitCode { value: 35 }",
        "London | 105 | ExitCode { value: 35 }",
        "London | 106 | ExitCode { value: 35 }",
        "London | 107 | ExitCode { value: 35 }",
        "London | 108 | ExitCode { value: 35 }",
        "London | 109 | ExitCode { value: 35 }",
        "London | 110 | ExitCode { value: 35 }",
        "London | 111 | ExitCode { value: 35 }",
        "Merge | 42 | ExitCode { value: 35 }",
        "Merge | 43 | ExitCode { value: 35 }",
        "Merge | 44 | ExitCode { value: 35 }",
        "Merge | 45 | ExitCode { value: 35 }",
        "Merge | 46 | ExitCode { value: 35 }",
        "Merge | 47 | ExitCode { value: 35 }",
        "Merge | 48 | ExitCode { value: 35 }",
        "Merge | 49 | ExitCode { value: 35 }",
        "Merge | 50 | ExitCode { value: 35 }",
        "Merge | 51 | ExitCode { value: 35 }",
        "Merge | 52 | ExitCode { value: 35 }",
        "Merge | 53 | ExitCode { value: 35 }",
        "Merge | 54 | ExitCode { value: 35 }",
        "Merge | 55 | ExitCode { value: 35 }",
        "Merge | 98 | ExitCode { value: 35 }",
        "Merge | 99 | ExitCode { value: 35 }",
        "Merge | 100 | ExitCode { value: 35 }",
        "Merge | 101 | ExitCode { value: 35 }",
        "Merge | 102 | ExitCode { value: 35 }",
        "Merge | 103 | ExitCode { value: 35 }",
        "Merge | 104 | ExitCode { value: 35 }",
        "Merge | 105 | ExitCode { value: 35 }",
        "Merge | 106 | ExitCode { value: 35 }",
        "Merge | 107 | ExitCode { value: 35 }",
        "Merge | 108 | ExitCode { value: 35 }",
        "Merge | 109 | ExitCode { value: 35 }",
        "Merge | 110 | ExitCode { value: 35 }",
        "Merge | 111 | ExitCode { value: 35 }",
    ],
}

vyzo avatar Feb 10 '23 18:02 vyzo

All these look normal given the nature of the tests, keeping open for verification.

vyzo avatar Feb 10 '23 18:02 vyzo