diff options
Diffstat (limited to 'src')
8 files changed, 1308 insertions, 2 deletions
diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json new file mode 100644 index 000000000..bfeaaaf6f --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCallsFiller.json @@ -0,0 +1,299 @@ +{ + "RevertOpcodeCalls" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + "0x0a" : "0x01" + } + }, + "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + "0x02" : "0x0e" + } + } + } + }, + { + "indexes" : { + "data" : 0, + "gas" : 1, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + "0x0a" : "0x01" + } + }, + "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0", + "storage" : { + "0x00" : "0x00", + "0x02" : "0x0e" + } + } + } + }, + { + "comment" : "OOG", + "indexes" : { + "data" : 0, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : 1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + "0x0a" : "0x01" + } + }, + "b1005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0", + "storage" : { + "0x00" : "0x00", + "0x02" : "0x0e" + } + } + } + }, + { + "indexes" : { + "data" : 1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "b1005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : 2, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + "0x0a" : "0x01" + } + }, + "b2005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0", + "storage" : { + "0x00" : "0x00", + "0x02" : "0x0e" + } + } + } + }, + { + "indexes" : { + "data" : 2, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "b2005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : 3, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + "0x0a" : "0x01" + } + }, + "b3005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0", + "storage" : { + "0x00" : "0x01", + "0x02" : "0x0e" + } + }, + "b3305374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0", + "storage" : { + "0x04" : "0x00", + "0x05" : "0x0e" + } + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[10]] (CALL 260000 (CALLDATALOAD 0) 0 0 0 0 0)}", + "nonce" : "0", + "storage" : { + } + }, + "b0005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[0]] (CALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }", + "nonce" : "0", + "storage" : { + } + }, + "b1005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[0]] (CALLCODE 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }", + "nonce" : "0", + "storage" : { + } + }, + "b2005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[0]] (DELEGATECALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) [[2]] 14 }", + "nonce" : "0", + "storage" : { + } + }, + "b3005374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[0]] (CALL 100000 0xb3305374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }", + "nonce" : "0", + "storage" : { + } + }, + "b3305374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[4]] (CALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[5]] 14 }", + "nonce" : "0", + "storage" : { + } + }, + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[1]] 12 (REVERT 0 1) [[3]] 13 }", + "nonce" : "0", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x000000000000000000000000b0005374fce5edbc8e2a8697c15331677e6ebf0b", + "0x000000000000000000000000b1005374fce5edbc8e2a8697c15331677e6ebf0b", + "0x000000000000000000000000b2005374fce5edbc8e2a8697c15331677e6ebf0b", + "0x000000000000000000000000b3005374fce5edbc8e2a8697c15331677e6ebf0b" + ], + "gasLimit" : [ + "460000", "88000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "094f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : [ + "0" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json new file mode 100644 index 000000000..9e0304078 --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeCreateFiller.json @@ -0,0 +1,99 @@ +{ + "RevertOpcodeCreate" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : -1, + "gas" : -1, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : { + "shouldnotexist" : "1" + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0" + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : { + "shouldnotexist" : "1" + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1", + "storage" : { + "0x00" : "0x0c", + "0x01" : "0x00" + } + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : { + "shouldnotexist" : "1" + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0" + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[0]] 1 (REVERT 0 1) [[1]] 12 }", + "code" : "{ (MSTORE 0 0x600160005560016000fd6011600155 ) [[1]](CREATE 1 17 15) [[0]] 12 }", + "nonce" : "0", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x600160005560016000fe6011600155" + ], + "gasLimit" : [ + "460000", "70000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : [ + "0" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json new file mode 100644 index 000000000..40eaf231c --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeDirectCallFiller.json @@ -0,0 +1,116 @@ +{ + "RevertOpcodeDirectCall" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : -1, + "gas" : -1, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "f1ecf98489fa9ed60a664fc4998db699cfa39d40" : { + "shouldnotexist" : "1" + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0" + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0", + "storage" : { + "0x00" : "0x00", + "0x02" : "0x0e" + } + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "storage" : { + } + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + }, + "094f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[10]] (CALL 60000 (CALLDATALOAD 0) 0 0 0 0 0)}", + "nonce" : "0", + "storage" : { + } + }, + "b94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "!!! STRANGE: CALL works, but if called from 094... it wont work. even if gas is enough. seems to be OOG.", + "code" : "{ [[0]] (CALL 50000 0xc94f5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0 0) [[2]] 14 }", + "nonce" : "0", + "storage" : { + } + }, + "c94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1", + "code" : "{ [[1]] 12 (REVERT 0 1) [[3]] 13 }", + "nonce" : "0", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x000000000000000000000000b94f5374fce5edbc8e2a8697c15331677e6ebf0b" + ], + "gasLimit" : [ + "460000", "68000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : [ + "0" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json new file mode 100644 index 000000000..be1a3146a --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeFiller.json @@ -0,0 +1,103 @@ +{ + "RevertOpcode" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : -1, + "gas" : -1, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "999999958985", + "nonce" : "1" + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "999999970000", + "nonce" : "1" + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "storage" : { + } + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[0]] 1 (REVERT 0 1) [[1]] 11 }", + "code" : "0x600160005560016000fd6011600155", + "nonce" : "", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "" + ], + "gasLimit" : [ + "800000", "30000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "a000000000000000000000000000000000000000", + "value" : [ + "0", "10" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json new file mode 100644 index 000000000..8aa10605c --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeInInitFiller.json @@ -0,0 +1,120 @@ +{ + "RevertOpcodeInInit" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : -1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP158", "EIP150"], + "result" : { + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "shouldnotexist" : "1" + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Frontier"], + "result" : { + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "shouldnotexist" : "1" + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Homestead", "EIP158", "EIP150"], + "result" : { + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "shouldnotexist" : "1" + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0" + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "shouldnotexist" : "1" + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : 1, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "6295ee1b4f6dd65047762f924ecd367c17eabf8f" : { + "shouldnotexist" : "1" + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0" + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + } + }, + "transaction" : { + "data" : "{ [[0]] 1 (REVERT 0 1) [[1]] 12 }", + "data" : [ + "0x600160005560016000fd6011600155" + ], + "gasLimit" : [ + "160000", "40000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "", + "value" : [ + "0", "10" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json new file mode 100644 index 000000000..0b40433ed --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeMultipleSubCallsFiller.json @@ -0,0 +1,412 @@ +{ + "RevertOpcodeMultipleSubCalls" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a000000000000000000000000000000000000000" : { + "storage" : { + "0x04" : "0x0c", + "0x05" : "0x0c" + } + } + } + }, + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a000000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + "0x04" : "0x0c", + "0x05" : "0x0c", + "0x0a" : "0x00", + "0x0b" : "0x00", + "0x0c" : "0x00" + } + }, + "b000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "c000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "d000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + } + } + }, + { + "indexes" : { + "data" : 1, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a100000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + "0x04" : "0x0c", + "0x05" : "0x0c", + "0x0a" : "0x00", + "0x0b" : "0x00", + "0x0c" : "0x00" + } + }, + "b000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "c000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "d000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + } + } + }, + { + "indexes" : { + "data" : 2, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a200000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + "0x04" : "0x0c", + "0x05" : "0x0c", + "0x0a" : "0x00", + "0x0b" : "0x00", + "0x0c" : "0x00" + } + }, + "b000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "c000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "d000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + } + } + }, + { + "indexes" : { + "data" : 3, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a300000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + "0x04" : "0x0c", + "0x05" : "0x0c", + "0x0a" : "0x00", + "0x0b" : "0x00", + "0x0c" : "0x00" + } + }, + "b000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "c000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "d000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + } + } + }, + { + "indexes" : { + "data" : 0, + "gas" : [2], + "value" : [1,0] + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a000000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + "0x04" : "0x0c", + "0x05" : "0x0c", + "0x0a" : "0x00", + "0x0b" : "0x00", + "0x0c" : "0x00" + } + }, + "a100000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + } + }, + "a200000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + } + }, + "a300000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + } + }, + "b000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "c000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "d000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + } + } + }, + { + "indexes" : { + "data" : -1, + "gas" : [1], + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "0x01" + }, + "a000000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + "0x04" : "0x00", + "0x05" : "0x00", + "0x0a" : "0x00", + "0x0b" : "0x00", + "0x0c" : "0x00" + } + }, + "a100000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + } + }, + "a200000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + } + }, + "a300000000000000000000000000000000000000" : { + "nonce" : "0x00", + "storage" : { + } + }, + "b000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "c000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + }, + "d000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00", + "0x03" : "0x00" + } + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + }, + "ac00000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (CALL 260000 (CALLDATALOAD 0) (CALLVALUE) 0 0 0 0) }", + "nonce" : "0", + "storage" : {} + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "simple calls", + "code" : "call -> callA-> revert | callB -> revert | some code * and OOG scenarious", + "code" : "{ [[10]](CALL 50000 0xb000000000000000000000000000000000000000 0 0 0 0 0) [[11]](CALL 50000 0xc000000000000000000000000000000000000000 0 0 0 0 0) [[12]](CALL 50000 0xd000000000000000000000000000000000000000 0 0 0 0 0) [[4]]12 [[5]]12 }", + "nonce" : "", + "storage" : { + } + }, + "a100000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[10]](CALLCODE 50000 0xb000000000000000000000000000000000000000 0 0 0 0 0) [[11]](CALLCODE 50000 0xc000000000000000000000000000000000000000 0 0 0 0 0) [[12]](CALLCODE 50000 0xd000000000000000000000000000000000000000 0 0 0 0 0) [[4]]12 [[5]]12 }", + "nonce" : "", + "storage" : { + } + }, + "a200000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[10]](DELEGATECALL 50000 0xb000000000000000000000000000000000000000 0 0 0 0) [[11]](DELEGATECALL 50000 0xc000000000000000000000000000000000000000 0 0 0 0) [[12]](DELEGATECALL 50000 0xd000000000000000000000000000000000000000 0 0 0 0) [[4]]12 [[5]]12 }", + "nonce" : "", + "storage" : { + } + }, + "a300000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[10]](CALL 50000 0xb000000000000000000000000000000000000000 0 0 0 0 0) [[11]](DELEGATECALL 50000 0xc000000000000000000000000000000000000000 0 0 0 0) [[12]](CALLCODE 50000 0xd000000000000000000000000000000000000000 0 0 0 0 0) [[4]]12 [[5]]12 }", + "nonce" : "", + "storage" : { + } + }, + "b000000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[1]] 12 (REVERT 0 1) }", + "nonce" : "", + "storage" : { + } + }, + "c000000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[2]] 12 (REVERT 0 1) }", + "nonce" : "", + "storage" : { + } + }, + "d000000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[3]] 12 (REVERT 0 1) }", + "nonce" : "", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "000000000000000000000000a000000000000000000000000000000000000000", + "000000000000000000000000a100000000000000000000000000000000000000", + "000000000000000000000000a200000000000000000000000000000000000000", + "000000000000000000000000a300000000000000000000000000000000000000" + ], + "gasLimit" : [ + "800000", "140000", "160000", "50000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "ac00000000000000000000000000000000000000", + "value" : [ + "0", "10" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json new file mode 100644 index 000000000..11dd70926 --- /dev/null +++ b/src/GeneralStateTestsFiller/stRevertTest/RevertOpcodeReturnFiller.json @@ -0,0 +1,157 @@ +{ + "RevertOpcodeReturn" : { + "env" : { + "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "10000000", + "currentNumber" : "1", + "currentTimestamp" : "1000", + "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "expect" : [ + { + "indexes" : { + "data" : -1, + "gas" : -1, + "value" : -1 + }, + "network" : ["Frontier", "Homestead", "EIP150", "EIP158"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + }, + "a000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x726576657274206d657373616765" + } + }, + "a100000000000000000000000000000000000000" : { + "storage" : { + } + } + } + }, + { + "indexes" : { + "data" : [1,2,3,4,5], + "gas" : 0, + "value" : -1 + }, + "network" : ["Metropolis"], + "result" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "1" + }, + "a000000000000000000000000000000000000000" : { + "storage" : { + "0x01" : "0x00", + "0x02" : "0x00" + } + }, + "a100000000000000000000000000000000000000" : { + "storage" : { + } + } + } + } + ], + "pre" : + { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "1000000000000", + "code" : "", + "nonce" : "0", + "storage" : { + } + }, + "a000000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ [[1]](CALL 150000 (CALLDATALOAD 0) 0 0 0 0 32) [[2]] (MLOAD 0) }", + "nonce" : "", + "storage" : { + } + }, + "a100000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0 32) }", + "nonce" : "0", + "storage" : { + } + }, + "a200000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0 0) }", + "nonce" : "0", + "storage" : { + } + }, + "a300000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0 0xfffffffffffffffffffffffffffff) }", + "nonce" : "0", + "storage" : { + } + }, + "a400000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0x0100 0x00) }", + "nonce" : "0", + "storage" : { + } + }, + "a500000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0x01 0x00) }", + "nonce" : "0", + "storage" : { + } + }, + "a600000000000000000000000000000000000000" : { + "balance" : "0", + "code" : "{ (SSTORE 0 0x72657665727465642064617461) (MSTORE 0 0x726576657274206d657373616765) (REVERT 0xfffffffffffffffffffffffffffff 0x00) }", + "nonce" : "0", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "000000000000000000000000a100000000000000000000000000000000000000", + "000000000000000000000000a200000000000000000000000000000000000000", + "000000000000000000000000a300000000000000000000000000000000000000", + "000000000000000000000000a400000000000000000000000000000000000000", + "000000000000000000000000a500000000000000000000000000000000000000", + "000000000000000000000000a600000000000000000000000000000000000000" + ], + "gasLimit" : [ + "800000", "70000" + ], + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "a000000000000000000000000000000000000000", + "value" : [ + "0" + ] + } + } +} diff --git a/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json b/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json index 5bbf12567..c7402caf3 100644 --- a/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json +++ b/src/GeneralStateTestsFiller/stRevertTest/TouchToEmptyAccountRevert3Filler.json @@ -60,14 +60,14 @@ "d94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { "balance" : "0", "nonce" : "0", - "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) }", + "code" : "{ (SELFDESTRUCT 0x1000000000000000000000000000000000000000) }", "storage": { } }, "e94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { "balance" : "0", "nonce" : "0", - "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) }", + "code" : "{ (SELFDESTRUCT 0x1000000000000000000000000000000000000000) }", "storage": { } } |