diff --git a/BlockchainTests/GeneralStateTests/stCreate2/CREATE2_FirstByte_loop.json b/BlockchainTests/GeneralStateTests/stCreate2/CREATE2_FirstByte_loop.json new file mode 100644 index 00000000000..95625aaa82a --- /dev/null +++ b/BlockchainTests/GeneralStateTests/stCreate2/CREATE2_FirstByte_loop.json @@ -0,0 +1,89 @@ +{ + "CREATE2_FirstByte_loop_d0g0v0_Berlin" : { + "_info" : { + "comment" : "", + "filling-rpc-server" : "evm version 1.10.4-unstable-41836706-20210512", + "filling-tool-version" : "retesteth-0.1.1-eip1559+commit.0b46e787.Linux.g++", + "lllcversion" : "Version: 0.5.14-develop.2021.4.29+commit.14c9d5de.Linux.clang", + "source" : "src/GeneralStateTestsFiller/stCreate2/CREATE2_FirstByte_loopFiller.yml", + "sourceHash" : "4b5879a640c75df014837a6e81652db6e97a2ddcb8c3705bca9f6ac37192134c" + }, + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "difficulty" : "0x020000", + "extraData" : "0x00", + "gasLimit" : "0x05500000", + "gasUsed" : "0x00", + "hash" : "0xc7c9604591048ef2052b0eca348ffbb4c7e804ba4a267edcba2d530c94e5ac27", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x925369db6c4805b873e98b40a4ad7010523ab83fd8148be9df8b81ddc55c5c58", + "timestamp" : "0x00", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x05f5e100", + "code" : "0x", + "nonce" : "0x00", + "storage" : { + } + }, + "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x00", + "code" : "0x7f600060005360016000f30000000000000000000000000000000000000000000060005260005b610100811015605157806001536000600a60006000f51515604657600181555b5b6001810190506026565b50600161010055", + "nonce" : "0x00", + "storage" : { + } + } + }, + "postStateHash" : "0x39950ea63e6dde74a6edf60b7ce5fe2149b045dcad5bb43d74675ec0c1b335cc", + "network" : "Berlin", + "sealEngine" : "NoProof", + "lastblockhash" : "0x7272d6d0d4955c1435bf1f8914f0a91690d77f3d8f1d56ffba413d45b0209561", + "genesisRLP" : "0xf901f9f901f4a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347942adc25665018aa1fe0e6bc666dac8fc2697ff9baa0925369db6c4805b873e98b40a4ad7010523ab83fd8148be9df8b81ddc55c5c58a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083020000808405500000808000a00000000000000000000000000000000000000000000000000000000000000000880000000000000000c0c0", + "blocks" : [ + { + "rlp" : "0xf90262f901f9a0c7c9604591048ef2052b0eca348ffbb4c7e804ba4a267edcba2d530c94e5ac27a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347942adc25665018aa1fe0e6bc666dac8fc2697ff9baa039950ea63e6dde74a6edf60b7ce5fe2149b045dcad5bb43d74675ec0c1b335cca0a5457b282024d452cd8895715ff55d357f15f083c79d4a3b460355e52ed65db5a0debbb554be52f04bd8775a6c03bad7d5367e735ec036867372b6f7962cbd8aa6b901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083020000018405500000837ee58e8203e800a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f863f861800184042c1d8094b94f5374fce5edbc8e2a8697c15331677e6ebf0b80801ca074fba7cf2a9f8a14023b975e9b9d0ce77b01797bf97e9a5b79ea4eccb7a17c55a03e0643c7fc67cdbac3d9ebc4c096417847d2fd972a9c70e0eecd455fac1e5696c0", + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "difficulty" : "0x020000", + "extraData" : "0x00", + "gasLimit" : "0x05500000", + "gasUsed" : "0x7ee58e", + "hash" : "0x7272d6d0d4955c1435bf1f8914f0a91690d77f3d8f1d56ffba413d45b0209561", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xc7c9604591048ef2052b0eca348ffbb4c7e804ba4a267edcba2d530c94e5ac27", + "receiptTrie" : "0xdebbb554be52f04bd8775a6c03bad7d5367e735ec036867372b6f7962cbd8aa6", + "stateRoot" : "0x39950ea63e6dde74a6edf60b7ce5fe2149b045dcad5bb43d74675ec0c1b335cc", + "timestamp" : "0x03e8", + "transactionsTrie" : "0xa5457b282024d452cd8895715ff55d357f15f083c79d4a3b460355e52ed65db5", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x042c1d80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "to" : "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : "0x00", + "v" : "0x1c", + "r" : "0x74fba7cf2a9f8a14023b975e9b9d0ce77b01797bf97e9a5b79ea4eccb7a17c55", + "s" : "0x3e0643c7fc67cdbac3d9ebc4c096417847d2fd972a9c70e0eecd455fac1e5696" + } + ], + "uncleHeaders" : [ + ] + } + ] + } +} \ No newline at end of file diff --git a/BlockchainTests/GeneralStateTests/stCreateTest/CREATE_FirstByte_loop.json b/BlockchainTests/GeneralStateTests/stCreateTest/CREATE_FirstByte_loop.json new file mode 100644 index 00000000000..63b62dbab79 --- /dev/null +++ b/BlockchainTests/GeneralStateTests/stCreateTest/CREATE_FirstByte_loop.json @@ -0,0 +1,89 @@ +{ + "CREATE_FirstByte_loop_d0g0v0_Berlin" : { + "_info" : { + "comment" : "", + "filling-rpc-server" : "evm version 1.10.4-unstable-41836706-20210512", + "filling-tool-version" : "retesteth-0.1.1-eip1559+commit.0b46e787.Linux.g++", + "lllcversion" : "Version: 0.5.14-develop.2021.4.29+commit.14c9d5de.Linux.clang", + "source" : "src/GeneralStateTestsFiller/stCreateTest/CREATE_FirstByte_loopFiller.yml", + "sourceHash" : "9a73819bcd16c356a1756523de2e28c81d7bb7cd1c4fbfda8c8a6014964fd363" + }, + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "difficulty" : "0x020000", + "extraData" : "0x00", + "gasLimit" : "0x05500000", + "gasUsed" : "0x00", + "hash" : "0xf6908c5f28c05c1963e17866af008fe661aeecdd2043c65456c432981edc5ae8", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x4738ec87b9f3e49067d3af8a4c3f6514eb198e12cacef3d704c9cac8f540ebb4", + "timestamp" : "0x00", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x05f5e100", + "code" : "0x", + "nonce" : "0x00", + "storage" : { + } + }, + "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x00", + "code" : "0x7f600060005360016000f30000000000000000000000000000000000000000000060005260005b610100811015604f5780600153600a60006000f01515604457600181555b5b6001810190506026565b50600161010055", + "nonce" : "0x00", + "storage" : { + } + } + }, + "postStateHash" : "0xc3be28c6254888194e33798d5f303ec18a342019220561bcd43ca32481fc6a05", + "network" : "Berlin", + "sealEngine" : "NoProof", + "lastblockhash" : "0xf95aa20b4a8c3437df00a5b5960c2720464e6f45bc25f7ca15e9029a003892c1", + "genesisRLP" : "0xf901f9f901f4a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347942adc25665018aa1fe0e6bc666dac8fc2697ff9baa04738ec87b9f3e49067d3af8a4c3f6514eb198e12cacef3d704c9cac8f540ebb4a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083020000808405500000808000a00000000000000000000000000000000000000000000000000000000000000000880000000000000000c0c0", + "blocks" : [ + { + "rlp" : "0xf90262f901f9a0f6908c5f28c05c1963e17866af008fe661aeecdd2043c65456c432981edc5ae8a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347942adc25665018aa1fe0e6bc666dac8fc2697ff9baa0c3be28c6254888194e33798d5f303ec18a342019220561bcd43ca32481fc6a05a0a5457b282024d452cd8895715ff55d357f15f083c79d4a3b460355e52ed65db5a084b5f99e4555e93b6510d8d06a0c54914983fe0caa57ac2f4941adaa1d4cdd1fb901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083020000018405500000837edc8e8203e800a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f863f861800184042c1d8094b94f5374fce5edbc8e2a8697c15331677e6ebf0b80801ca074fba7cf2a9f8a14023b975e9b9d0ce77b01797bf97e9a5b79ea4eccb7a17c55a03e0643c7fc67cdbac3d9ebc4c096417847d2fd972a9c70e0eecd455fac1e5696c0", + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "difficulty" : "0x020000", + "extraData" : "0x00", + "gasLimit" : "0x05500000", + "gasUsed" : "0x7edc8e", + "hash" : "0xf95aa20b4a8c3437df00a5b5960c2720464e6f45bc25f7ca15e9029a003892c1", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xf6908c5f28c05c1963e17866af008fe661aeecdd2043c65456c432981edc5ae8", + "receiptTrie" : "0x84b5f99e4555e93b6510d8d06a0c54914983fe0caa57ac2f4941adaa1d4cdd1f", + "stateRoot" : "0xc3be28c6254888194e33798d5f303ec18a342019220561bcd43ca32481fc6a05", + "timestamp" : "0x03e8", + "transactionsTrie" : "0xa5457b282024d452cd8895715ff55d357f15f083c79d4a3b460355e52ed65db5", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x042c1d80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "to" : "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : "0x00", + "v" : "0x1c", + "r" : "0x74fba7cf2a9f8a14023b975e9b9d0ce77b01797bf97e9a5b79ea4eccb7a17c55", + "s" : "0x3e0643c7fc67cdbac3d9ebc4c096417847d2fd972a9c70e0eecd455fac1e5696" + } + ], + "uncleHeaders" : [ + ] + } + ] + } +} \ No newline at end of file diff --git a/GeneralStateTests/stCreate2/CREATE2_FirstByte_loop.json b/GeneralStateTests/stCreate2/CREATE2_FirstByte_loop.json new file mode 100644 index 00000000000..d7780107c10 --- /dev/null +++ b/GeneralStateTests/stCreate2/CREATE2_FirstByte_loop.json @@ -0,0 +1,65 @@ +{ + "CREATE2_FirstByte_loop" : { + "_info" : { + "comment" : "", + "filling-rpc-server" : "evm version 1.10.4-unstable-41836706-20210512", + "filling-tool-version" : "retesteth-0.1.1-eip1559+commit.0b46e787.Linux.g++", + "lllcversion" : "Version: 0.5.14-develop.2021.4.29+commit.14c9d5de.Linux.clang", + "source" : "src/GeneralStateTestsFiller/stCreate2/CREATE2_FirstByte_loopFiller.yml", + "sourceHash" : "4b5879a640c75df014837a6e81652db6e97a2ddcb8c3705bca9f6ac37192134c" + }, + "env" : { + "currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "0x05500000", + "currentNumber" : "0x01", + "currentTimestamp" : "0x03e8", + "previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "post" : { + "Berlin" : [ + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + }, + "hash" : "0x12115fcd20c04d54071de7cef3671eaed2acaa129f1bb15bda5e35fe08d46c66", + "txbytes" : "0xf861800184042c1d8094b94f5374fce5edbc8e2a8697c15331677e6ebf0b80801ca074fba7cf2a9f8a14023b975e9b9d0ce77b01797bf97e9a5b79ea4eccb7a17c55a03e0643c7fc67cdbac3d9ebc4c096417847d2fd972a9c70e0eecd455fac1e5696", + "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + } + ] + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x05f5e100", + "code" : "0x", + "nonce" : "0x00", + "storage" : { + } + }, + "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x00", + "code" : "0x7f600060005360016000f30000000000000000000000000000000000000000000060005260005b610100811015605157806001536000600a60006000f51515604657600181555b5b6001810190506026565b50600161010055", + "nonce" : "0x00", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x" + ], + "gasPrice" : "0x01", + "gasLimit" : [ + "0x042c1d80" + ], + "nonce" : "0x00", + "secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : [ + "0x00" + ] + } + } +} \ No newline at end of file diff --git a/GeneralStateTests/stCreateTest/CREATE_FirstByte_loop.json b/GeneralStateTests/stCreateTest/CREATE_FirstByte_loop.json new file mode 100644 index 00000000000..913b58040c2 --- /dev/null +++ b/GeneralStateTests/stCreateTest/CREATE_FirstByte_loop.json @@ -0,0 +1,65 @@ +{ + "CREATE_FirstByte_loop" : { + "_info" : { + "comment" : "", + "filling-rpc-server" : "evm version 1.10.4-unstable-41836706-20210512", + "filling-tool-version" : "retesteth-0.1.1-eip1559+commit.0b46e787.Linux.g++", + "lllcversion" : "Version: 0.5.14-develop.2021.4.29+commit.14c9d5de.Linux.clang", + "source" : "src/GeneralStateTestsFiller/stCreateTest/CREATE_FirstByte_loopFiller.yml", + "sourceHash" : "9a73819bcd16c356a1756523de2e28c81d7bb7cd1c4fbfda8c8a6014964fd363" + }, + "env" : { + "currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", + "currentDifficulty" : "0x020000", + "currentGasLimit" : "0x05500000", + "currentNumber" : "0x01", + "currentTimestamp" : "0x03e8", + "previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6" + }, + "post" : { + "Berlin" : [ + { + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + }, + "hash" : "0x1aae2ec368819935a8454a67616432d687dbe3fcaedbcc150c5f055bb975fa8d", + "txbytes" : "0xf861800184042c1d8094b94f5374fce5edbc8e2a8697c15331677e6ebf0b80801ca074fba7cf2a9f8a14023b975e9b9d0ce77b01797bf97e9a5b79ea4eccb7a17c55a03e0643c7fc67cdbac3d9ebc4c096417847d2fd972a9c70e0eecd455fac1e5696", + "logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + } + ] + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x05f5e100", + "code" : "0x", + "nonce" : "0x00", + "storage" : { + } + }, + "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x00", + "code" : "0x7f600060005360016000f30000000000000000000000000000000000000000000060005260005b610100811015604f5780600153600a60006000f01515604457600181555b5b6001810190506026565b50600161010055", + "nonce" : "0x00", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x" + ], + "gasPrice" : "0x01", + "gasLimit" : [ + "0x042c1d80" + ], + "nonce" : "0x00", + "secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "0xb94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "value" : [ + "0x00" + ] + } + } +} \ No newline at end of file diff --git a/src/GeneralStateTestsFiller/stCreate2/CREATE2_FirstByte_loopFiller.yml b/src/GeneralStateTestsFiller/stCreate2/CREATE2_FirstByte_loopFiller.yml new file mode 100644 index 00000000000..907030121d2 --- /dev/null +++ b/src/GeneralStateTestsFiller/stCreate2/CREATE2_FirstByte_loopFiller.yml @@ -0,0 +1,74 @@ +# The test calls CREATE2 in a loop deploying 1-byte contracts with all possible byte values, records in storage the values that failed to deploy. +CREATE2_FirstByte_loop: + env: + currentCoinbase: 2adc25665018aa1fe0e6bc666dac8fc2697ff9ba + currentDifficulty: '0x020000' + currentGasLimit: '89128960' + currentNumber: '1' + currentTimestamp: '1000' + previousHash: 5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6 + + pre: + a94f5374fce5edbc8e2a8697c15331677e6ebf0b: + balance: 100000000 + code: '' + nonce: 0 + storage: {} + b94f5374fce5edbc8e2a8697c15331677e6ebf0b: + balance: 0 + code: | + :yul + { + // initcode: { mstore8(0, 0x00) return(0, 1) } + mstore(0, 0x600060005360016000f300000000000000000000000000000000000000000000) + for { let code := 0 } lt(code, 256) { code := add(code, 1) } + { + mstore8(1, code) // change returned byte in initcode + if iszero(create2(0, 0, 10, 0)) { sstore(code, 1) } + } + sstore(256, 1) + } + nonce: 0 + storage: {} + + transaction: + data: + - '' + gasLimit: + - 70000000 + gasPrice: 1 + nonce: 0 + secretKey: 45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8 + to: 'b94f5374fce5edbc8e2a8697c15331677e6ebf0b' + value: + - 0 + + expect: + - indexes: + data: !!int -1 + gas: !!int -1 + value: !!int -1 + network: + - 'Berlin' + result: + a94f5374fce5edbc8e2a8697c15331677e6ebf0b: + nonce: 1 + b94f5374fce5edbc8e2a8697c15331677e6ebf0b: + nonce: 256 + storage: + '256': 1 + 7243c189900bddbc8e39c9115f7030dbc86a2b15: + nonce: 1 + code: '0x00' + 884f09dec8b15b4988a71f0290f6c921be908026: + nonce: 1 + code: '0x01' + e893e8a20a685f12abde1714eb00b59859d8bdef: + nonce: 1 + code: '0xef' + 6778c377c68b0930eddf71eebf31023ed756e40c: + nonce: 1 + code: '0xfe' + 205b487b17915053055fdc3974c81b03e6d4acdb: + nonce: 1 + code: '0xff' diff --git a/src/GeneralStateTestsFiller/stCreateTest/CREATE_FirstByte_loopFiller.yml b/src/GeneralStateTestsFiller/stCreateTest/CREATE_FirstByte_loopFiller.yml new file mode 100644 index 00000000000..c008103ea25 --- /dev/null +++ b/src/GeneralStateTestsFiller/stCreateTest/CREATE_FirstByte_loopFiller.yml @@ -0,0 +1,74 @@ +# The test calls CREATE in a loop deploying 1-byte contracts with all possible byte values, records in storage the values that failed to deploy. +CREATE_FirstByte_loop: + env: + currentCoinbase: 2adc25665018aa1fe0e6bc666dac8fc2697ff9ba + currentDifficulty: '0x020000' + currentGasLimit: '89128960' + currentNumber: '1' + currentTimestamp: '1000' + previousHash: 5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6 + + pre: + a94f5374fce5edbc8e2a8697c15331677e6ebf0b: + balance: 100000000 + code: '' + nonce: 0 + storage: {} + b94f5374fce5edbc8e2a8697c15331677e6ebf0b: + balance: 0 + code: | + :yul + { + // initcode: { mstore8(0, 0x00) return(0, 1) } + mstore(0, 0x600060005360016000f300000000000000000000000000000000000000000000) + for { let code := 0 } lt(code, 256) { code := add(code, 1) } + { + mstore8(1, code) // change returned byte in initcode + if iszero(create(0, 0, 10)) { sstore(code, 1) } + } + sstore(256, 1) + } + nonce: 0 + storage: {} + + transaction: + data: + - '' + gasLimit: + - 70000000 + gasPrice: 1 + nonce: 0 + secretKey: 45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8 + to: 'b94f5374fce5edbc8e2a8697c15331677e6ebf0b' + value: + - 0 + + expect: + - indexes: + data: !!int -1 + gas: !!int -1 + value: !!int -1 + network: + - '>=Berlin' + result: + a94f5374fce5edbc8e2a8697c15331677e6ebf0b: + nonce: 1 + b94f5374fce5edbc8e2a8697c15331677e6ebf0b: + nonce: 256 + storage: + '256': 1 + f1ecf98489fa9ed60a664fc4998db699cfa39d40: + nonce: 1 + code: '0x00' + 30c7cc0d18123b445c2636ff9069ef28c0dc32b5: + nonce: 1 + code: '0x01' + ca72dc06e1307b81956f583e0b084729c75c6b82: + nonce: 1 + code: '0xef' + b1af9b5d3b3b500caa66933d49ec6d097383b14a: + nonce: 1 + code: '0xfe' + 710fb0947706d217c7e803f594ab62b321a01dd5: + nonce: 1 + code: '0xff'