evm2wasm icon indicating copy to clipboard operation
evm2wasm copied to clipboard

Call/Create state tests are broken

Open jwasinger opened this issue 6 years ago • 3 comments

Here is a full trace of the test case callcall_00:

jwasinger@certification-hive-test03:~/projects/cpp-ethereum/build$ ETHEREUM_TEST_PATH="../../tests" test/testeth -t GeneralStateTests/stCallCodes -- --vm hera --singlenet "Byzantium" --singletest 'callcall_00' --evmc evm2wasm.js=true --evmc fallback=false
Running 1 test case...
Test Case "stCallCodes":
100%
Executing...
importGlobals
evmTrace
{"depth":0,"gas":2979000,"gasCost":0,"op":96,"pc":0,"stack":[]}
useGas 3
evmTrace
{"depth":0,"gas":2978997,"gasCost":3,"op":96,"pc":2,"stack":["0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 3
evmTrace
{"depth":0,"gas":2978994,"gasCost":6,"op":96,"pc":4,"stack":["0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 3
evmTrace
{"depth":0,"gas":2978991,"gasCost":9,"op":96,"pc":6,"stack":["0x0000000000000000000000000000000000000000000000000000000000000040","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 3
evmTrace
{"depth":0,"gas":2978988,"gasCost":12,"op":96,"pc":8,"stack":["0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 3
evmTrace
{"depth":0,"gas":2978985,"gasCost":15,"op":115,"pc":10,"stack":["0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 3
evmTrace
{"depth":0,"gas":2978982,"gasCost":18,"op":98,"pc":31,"stack":["0x0000000000000000000000001000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 3
evmTrace
{"depth":0,"gas":2978979,"gasCost":21,"op":241,"pc":35,"stack":["0x0000000000000000000000000000000000000000000000000000000000055730","0x0000000000000000000000001000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000040"]}
useGas 0
useGas 6
InternalError: Value exceeds 64 bits.
testeth: /home/jwasinger/projects/cpp-ethereum/libevm/EVMC.cpp:77: virtual dev::eth::owning_bytes_ref dev::eth::EVMC::exec(dev::u256&, dev::eth::ExtVMFace&, const OnOpFunc&): Assertion `r.status() >= 0' failed.
unknown location(0): fatal error: in "GeneralStateTests/stCallCodes": signal: SIGABRT (application abort requested)

The execution is compatible with Geth until after the CALLCODE op is executed.

jwasinger avatar Apr 03 '18 20:04 jwasinger

Not yet clear whether this is an issue with evm2wasm or Hera.

jwasinger avatar Apr 27 '18 07:04 jwasinger

~~cause found: https://github.com/ewasm/hera/issues/197~~

jwasinger avatar May 02 '18 07:05 jwasinger

@jwasinger why did you cross out ewasm/hera#197 above?

lrettig avatar May 14 '18 14:05 lrettig