diff --git a/EOFTests/EIP4200/validInvalid.json b/EOFTests/EIP4200/validInvalid.json index 56dad1e6ee7..0ef09f53528 100644 --- a/EOFTests/EIP4200/validInvalid.json +++ b/EOFTests/EIP4200/validInvalid.json @@ -1,14 +1,14 @@ { "validInvalid" : { "_info" : { - "comment" : "Test various examples to see if they are valid or invalid.\nImplements\n EOF1V4200_0001 (Valid) EOF code containing RJUMP (Positive, Negative)\n EOF1V4200_0002 (Valid) EOF code containing RJUMP (Zero)\n EOF1V4200_0003 (Valid) EOF code containing RJUMPI (Positive)\n EOF1V4200_0004 (Valid) EOF code containing RJUMPI (Negative)\n EOF1V4200_0005 (Valid) EOF code containing RJUMPI (Zero)\n EOF1V4200_0006 (Valid) EOF with RJUMPV table size 1 (Positive)\n EOF1V4200_0007 (Valid) EOF with RJUMPV table size 1 (Negative)\n EOF1V4200_0008 (Valid) EOF with RJUMPV table size 1 (Zero)\n EOF1V4200_0009 (Valid) EOF with RJUMPV table size 3\n EOF1V4200_0010 (Valid) EOF with RJUMPV table size 255 (Target 0)\n EOF1V4200_0011 (Valid) EOF with RJUMPV table size 255 (Target 100)\n EOF1V4200_0012 (Valid) EOF with RJUMPV table size 255 (Target 254)\n EOF1V4200_0013 (Valid) EOF with RJUMPV table size 255 (Target 256)\n EOF1I4200_0001 (Invalid) EOF code containing truncated RJUMP\n EOF1I4200_0002 (Invalid) EOF code containing truncated RJUMP\n EOF1I4200_0003 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping into header)\n EOF1I4200_0004 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping before code begin)\n EOF1I4200_0005 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping into data section)\n EOF1I4200_0006 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping after code end)\n EOF1I4200_0007 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping to code end)\n EOF1I4200_0008 (Invalid) EOF code containing RJUMP with target self RJUMP immediate\n EOF1I4200_0009 (Invalid) EOF code containing RJUMP with target other RJUMP immediate\n EOF1I4200_0010 (Invalid) EOF code containing RJUMP with target RJUMPI immediate\n EOF1I4200_0011 (Invalid) EOF code containing RJUMP with target PUSH immediate\n EOF1I4200_0012 (Invalid) EOF code containing RJUMP with target RJUMPV immediate\n EOF1I4200_0013 (Invalid) EOF code containing RJUMP with target CALLF immediate\n EOF1I4200_0014 (Invalid) EOF code containing truncated RJUMPI\n EOF1I4200_0015 (Invalid) EOF code containing truncated RJUMPI\n EOF1I4200_0016 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping into header)\n EOF1I4200_0017 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping to before code begin)\n EOF1I4200_0018 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping into data section)\n EOF1I4200_0019 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping to after code end)\n EOF1I4200_0020 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping to code end)\n EOF1I4200_0021 (Invalid) EOF code containing RJUMPI with target same RJUMPI immediate\n EOF1I4200_0022 (Invalid) EOF code containing RJUMPI with target other RJUMPI immediate\n EOF1I4200_0023 (Invalid) EOF code containing RJUMPI with target RJUMP immediate\n EOF1I4200_0024 (Invalid) EOF code containing RJUMPI with target PUSH immediate\n EOF1I4200_0025 (Invalid) EOF code containing RJUMPI with target RJUMPV immediate\n EOF1I4200_0026 (Invalid) EOF code containing RJUMPI with target CALLF immediate\n EOF1I4200_0027 (Invalid) EOF code containing RJUMPV with count 0 and zero immediates\n EOF1I4200_0028 (Invalid) EOF code containing RJUMPV with count 0 and one immediates\n EOF1I4200_0029 (Invalid) EOF code containing truncated RJUMPV\n EOF1I4200_0030 (Invalid) EOF code containing truncated RJUMPV\n EOF1I4200_0031 (Invalid) EOF code containing truncated RJUMPV\n EOF1I4200_0032 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping into header)\n EOF1I4200_0033 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping to before code begin)\n EOF1I4200_0034 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping into data section)\n EOF1I4200_0035 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping to after code end)\n EOF1I4200_0036 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping to code end)\n EOF1I4200_0037 (Invalid) EOF code containing RJUMPV with target same RJUMPV immediate\n EOF1I4200_0038 (Invalid) EOF code containing RJUMPV with target RJUMP immediate\n EOF1I4200_0039 (Invalid) EOF code containing RJUMPV with target RJUMPI immediate\n EOF1I4200_0040 (Invalid) EOF code containing RJUMPV with target PUSH immediate\n EOF1I4200_0041 (Invalid) EOF code containing RJUMPV with target other RJUMPV immediate\n EOF1I4200_0042 (Invalid) EOF code containing RJUMPV with target CALLF immediate\n", - "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.cf827ae2.dirty", + "comment" : "Test various examples to see if they are valid or invalid.\nImplements\n EOF1V4200_0001 (Valid) EOF code containing RJUMP (Positive, Negative)\n EOF1V4200_0002 (Valid) EOF code containing RJUMP (Zero)\n EOF1V4200_0003 (Valid) EOF code containing RJUMPI (Positive)\n EOF1V4200_0004 (Valid) EOF code containing RJUMPI (Negative)\n EOF1V4200_0005 (Valid) EOF code containing RJUMPI (Zero)\n EOF1V4200_0006 (Valid) EOF with RJUMPV table size 1 (Positive)\n EOF1V4200_0007 (Valid) EOF with RJUMPV table size 1 (Negative)\n EOF1V4200_0008 (Valid) EOF with RJUMPV table size 1 (Zero)\n EOF1V4200_0009 (Valid) EOF with RJUMPV table size 3\n EOF1V4200_0010 (Valid) EOF with RJUMPV table size 256 (Target 0)\n EOF1V4200_0011 (Valid) EOF with RJUMPV table size 256 (Target 100)\n EOF1V4200_0012 (Valid) EOF with RJUMPV table size 256 (Target 254)\n EOF1V4200_0013 (Valid) EOF with RJUMPV table size 256 (Target 256)\n EOF1I4200_0001 (Invalid) EOF code containing truncated RJUMP\n EOF1I4200_0002 (Invalid) EOF code containing truncated RJUMP\n EOF1I4200_0003 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping into header)\n EOF1I4200_0004 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping before code begin)\n EOF1I4200_0005 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping into data section)\n EOF1I4200_0006 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping after code end)\n EOF1I4200_0007 (Invalid) EOF code containing RJUMP with target outside code bounds (Jumping to code end)\n EOF1I4200_0008 (Invalid) EOF code containing RJUMP with target self RJUMP immediate\n EOF1I4200_0009 (Invalid) EOF code containing RJUMP with target other RJUMP immediate\n EOF1I4200_0010 (Invalid) EOF code containing RJUMP with target RJUMPI immediate\n EOF1I4200_0011 (Invalid) EOF code containing RJUMP with target PUSH immediate\n EOF1I4200_0012 (Invalid) EOF code containing RJUMP with target RJUMPV immediate\n EOF1I4200_0013 (Invalid) EOF code containing RJUMP with target CALLF immediate\n EOF1I4200_0014 (Invalid) EOF code containing truncated RJUMPI\n EOF1I4200_0015 (Invalid) EOF code containing truncated RJUMPI\n EOF1I4200_0016 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping into header)\n EOF1I4200_0017 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping to before code begin)\n EOF1I4200_0018 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping into data section)\n EOF1I4200_0019 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping to after code end)\n EOF1I4200_0020 (Invalid) EOF code containing RJUMPI with target outside code bounds (Jumping to code end)\n EOF1I4200_0021 (Invalid) EOF code containing RJUMPI with target same RJUMPI immediate\n EOF1I4200_0022 (Invalid) EOF code containing RJUMPI with target other RJUMPI immediate\n EOF1I4200_0023 (Invalid) EOF code containing RJUMPI with target RJUMP immediate\n EOF1I4200_0024 (Invalid) EOF code containing RJUMPI with target PUSH immediate\n EOF1I4200_0025 (Invalid) EOF code containing RJUMPI with target RJUMPV immediate\n EOF1I4200_0026 (Invalid) EOF code containing RJUMPI with target CALLF immediate\n EOF1I4200_0027 (Invalid) EOF code containing RJUMPV with max_index 0 but no immediates\n EOF1I4200_0028 (Invalid) EOF code containing truncated RJUMPV\n EOF1I4200_0029 (Invalid) EOF code containing truncated RJUMPV\n EOF1I4200_0030 (Invalid) EOF code containing truncated RJUMPV\n EOF1I4200_0031 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping into header)\n EOF1I4200_0032 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping to before code begin)\n EOF1I4200_0033 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping into data section)\n EOF1I4200_0034 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping to after code end)\n EOF1I4200_0035 (Invalid) EOF code containing RJUMPV with target outside code bounds (Jumping to code end)\n EOF1I4200_0036 (Invalid) EOF code containing RJUMPV with target same RJUMPV immediate\n EOF1I4200_0037 (Invalid) EOF code containing RJUMPV with target RJUMP immediate\n EOF1I4200_0038 (Invalid) EOF code containing RJUMPV with target RJUMPI immediate\n EOF1I4200_0039 (Invalid) EOF code containing RJUMPV with target PUSH immediate\n EOF1I4200_0040 (Invalid) EOF code containing RJUMPV with target other RJUMPV immediate\n EOF1I4200_0041 (Invalid) EOF code containing RJUMPV with target CALLF immediate\n", + "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.5b524c94", "filling-tool-version" : "retesteth-0.3.1-shanghai+commit.acfdfad0.Linux.g++", - "generatedTestHash" : "cbc8ddf5458da4a44523da89d5a9f051054faafec411f74f174b229b9c9d1838", + "generatedTestHash" : "4b0d57abc3e9a400de99a722d39a61d52ce44a6af7cbb85c5196c53b7bf544a1", "lllcversion" : "Version: 0.5.14-develop.2022.4.6+commit.401d5358.Linux.g++", "solidity" : "Version: 0.8.18-develop.2023.1.16+commit.469d6d4d.Linux.g++", "source" : "src/EOFTestsFiller/EIP4200/validInvalidFiller.yml", - "sourceHash" : "85099a4856ed8a7f7623ef9d16d168a5d1f5c8ead57d5ff9250b422a52d34e80" + "sourceHash" : "44fa391f2dac3aaf9e7dcbc8bae63f38132a1c6bfc1763b252feb6cacf2303ef" }, "vectors" : { "validInvalid_0" : { @@ -36,7 +36,7 @@ } }, "validInvalid_10" : { - "code" : "0xef0001010004020001030804000000000000026064e2ff006700c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe0043010000fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008200ff5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b00600160015500", + "code" : "0xef0001010004020001030a04000000000000026064e2ff006700c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe0043010000fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008200c500ff5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b00600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -48,7 +48,7 @@ } }, "validInvalid_11" : { - "code" : "0xef00010100040200010308040000000000000260fee2ff006700c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe004300fb00fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008201005b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b00600160015500", + "code" : "0xef0001010004020001030a040000000000000260fee2ff006700c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe004300fb00fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd0082010000c55b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b00600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -60,7 +60,7 @@ } }, "validInvalid_12" : { - "code" : "0xef000101000402000103080400000000000002610100e2ff006700c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe004300fb00fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008200ff5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b600160015500", + "code" : "0xef0001010004020001030a0400000000000002610100e2ff006700c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe004300fb00fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008200ff00c55b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -227,7 +227,7 @@ } }, "validInvalid_24" : { - "code" : "0xef0001010004020001000b0400000000000000e00005006001e201000000", + "code" : "0xef0001010004020001000b0400000000000000e00005006001e200000000", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -408,7 +408,7 @@ } }, "validInvalid_37" : { - "code" : "0xef0001010004020001000d04000000000000016001e10005006001e201000000", + "code" : "0xef0001010004020001000d04000000000000016001e10005006001e200000000", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -441,7 +441,7 @@ "result" : false }, "Prague" : { - "exception" : "EOF_InvalidJumpTableCount", + "exception" : "EOF_TruncatedImmediate", "result" : false } } @@ -459,20 +459,20 @@ } }, "validInvalid_40" : { - "code" : "0xef0001010004020001000604000000000000016001e2000000", + "code" : "0xef0001010004020001000304000000000000016001e2", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_InvalidJumpTableCount", + "exception" : "EOF_TruncatedImmediate", "result" : false } } }, "validInvalid_41" : { - "code" : "0xef0001010004020001000304000000000000016001e2", + "code" : "0xef0001010004020001000404000000000000016001e200", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -485,7 +485,7 @@ } }, "validInvalid_42" : { - "code" : "0xef0001010004020001000404000000000000016001e201", + "code" : "0xef0001010004020001000504000000000000016001e20000", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -498,20 +498,20 @@ } }, "validInvalid_43" : { - "code" : "0xef0001010004020001000504000000000000016001e20100", + "code" : "0xef0001010004020001000704000000000000016001e200fff900", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_TruncatedImmediate", + "exception" : "EOF_InvalidJumpDestination", "result" : false } } }, "validInvalid_44" : { - "code" : "0xef0001010004020001000704000000000000016001e201fff900", + "code" : "0xef0001010004020001000704000000000000016001e200fff100", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -524,7 +524,7 @@ } }, "validInvalid_45" : { - "code" : "0xef0001010004020001000704000000000000016001e201fff100", + "code" : "0xef0001010004020001000704000400000000016001e200000200aabbccdd", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -537,7 +537,7 @@ } }, "validInvalid_46" : { - "code" : "0xef0001010004020001000704000400000000016001e201000200aabbccdd", + "code" : "0xef0001010004020001000704000000000000016001e200000200", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -550,7 +550,7 @@ } }, "validInvalid_47" : { - "code" : "0xef0001010004020001000704000000000000016001e201000200", + "code" : "0xef0001010004020001000704000000000000016001e200000100", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -563,7 +563,7 @@ } }, "validInvalid_48" : { - "code" : "0xef0001010004020001000704000000000000016001e201000100", + "code" : "0xef0001010004020001000704000000000000016001e200ffff00", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -576,7 +576,7 @@ } }, "validInvalid_49" : { - "code" : "0xef0001010004020001000704000000000000016001e201ffff00", + "code" : "0xef0001010004020001000d04000000000000016001e2000005006001e0fff700", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -589,7 +589,7 @@ } }, "validInvalid_5" : { - "code" : "0xef0001010004020001000f04000000000000026000e20100035b5b00600160015500", + "code" : "0xef0001010004020001000f04000000000000026000e20000035b5b00600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -601,7 +601,7 @@ } }, "validInvalid_50" : { - "code" : "0xef0001010004020001000d04000000000000016001e2010005006001e0fff700", + "code" : "0xef0001010004020001000d04000000000000016001e2000005006001e1fff700", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -614,7 +614,7 @@ } }, "validInvalid_51" : { - "code" : "0xef0001010004020001000d04000000000000016001e2010005006001e1fff700", + "code" : "0xef0001010004020001000d04000000000000016001e200000200600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -627,7 +627,7 @@ } }, "validInvalid_52" : { - "code" : "0xef0001010004020001000d04000000000000016001e201000200600160015500", + "code" : "0xef0001010004020001000e04000000000000016001e2000005006001e200000000", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -640,20 +640,7 @@ } }, "validInvalid_53" : { - "code" : "0xef0001010004020001000e04000000000000016001e2010005006001e201000000", - "results" : { - "Cancun" : { - "exception" : "EOF_InvalidCode", - "result" : false - }, - "Prague" : { - "exception" : "EOF_InvalidJumpDestination", - "result" : false - } - } - }, - "validInvalid_54" : { - "code" : "0xef0001010008020002000a00060400000000000001000000026000e2010002e30001006001600155e4", + "code" : "0xef0001010008020002000a00060400000000000001000000026000e2000002e30001006001600155e4", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -666,7 +653,7 @@ } }, "validInvalid_6" : { - "code" : "0xef000101000402000100100400000000000002e000066001600155006000e201fff400", + "code" : "0xef000101000402000100100400000000000002e000066001600155006000e200fff400", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -678,7 +665,7 @@ } }, "validInvalid_7" : { - "code" : "0xef0001010004020001000c04000000000000026000e2010000600160015500", + "code" : "0xef0001010004020001000c04000000000000026000e2000000600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -690,7 +677,7 @@ } }, "validInvalid_8" : { - "code" : "0xef0001010004020001001304000000000000026000e20300030000fff65b5b00600160015500", + "code" : "0xef0001010004020001001304000000000000026000e20200030000fff65b5b00600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -702,7 +689,7 @@ } }, "validInvalid_9" : { - "code" : "0xef0001010004020001030804000000000000026000e2ff010000c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe004300fb00fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008200ff5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b00600160015500", + "code" : "0xef0001010004020001030a04000000000000026000e2ff010000c600690073005100ff004a00ec002900cd00ba00ab00f200fb00e30046007c00c2005400f8001b00e800e7008d0076005a002e00630033009f00c9009a00660032000d00b70031005800a3005a0025005d00050017005800e9005e00d400ab00b200cd00c6009b00b400540011000e0082007400410021003d00dc0087007000e9003e00a1004100e100fc0067003e0001007e009700ea00dc006b0096008f0038005c002a00ec00b0003b00fb003200af003c005400ec001800db005c0002001a00fe004300fb00fa00aa003a00fb002900d100e60005003c007c0094007500d800be0061008900f9005c00bb00a80099000f009500b100eb00f100b3000500ef00f7000000e900a1003a00e500ca000b00cb00d000480047006400bd001f0023001e00a8001c007b006400c500140073005a00c5005e004b00790063003b0070006400240011009e000900dc00aa00d400ac00f2001b001000af003b003300cd00e30050004800470015005c00bb006f0022001900ba009b007d00f5000b00e1001a001c007f002300f8002900f800a4001b001300b500ca004e00e800980032003800e00079004d003d003400bc005f004e007700fa00cb006c000500ac00860021002b00aa001a005500a200be007000b50073003b0004005c00d30036009400b300af00e200f000e4009e004f00320015004900fd008200c500ff5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b00600160015500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", diff --git a/EOFTests/EIP4750/validInvalid.json b/EOFTests/EIP4750/validInvalid.json index f16cf73ae15..727b5e83037 100644 --- a/EOFTests/EIP4750/validInvalid.json +++ b/EOFTests/EIP4750/validInvalid.json @@ -2,13 +2,13 @@ "validInvalid" : { "_info" : { "comment" : "Test various examples to see if they are valid or invalid.\nImplements\n EOF1V4750_0001 (Valid) EOF code containing single type section\n EOF1V4750_0002 (Valid) EOF code containing single type section and data section\n EOF1V4750_0003 (Valid) EOF code containing multiple type/code sections\n EOF1V4750_0004 (Valid) EOF code containing multiple type/code sections and data section\n EOF1V4750_0005 (Valid) EOF code containing multiple type/code sections, no void I/O types\n EOF1V4750_0006 (Valid) EOF code containing multiple type/code sections, no void I/O types, containing data section\n EOF1V4750_0007 (Valid) EOF code containing RETF as terminating instruction\n EOF1V4750_0008 (Valid) EOF code containing RETF as terminating instruction, containing data section\n EOF1V4750_0009 (Valid) EOF code containing the maximum number of code sections\n EOF1V4750_0010 (Valid) EOF code containing the maximum number of code sections and data section\n EOF1I4750_0001 (Invalid) EOF code missing mandatory type section\n EOF1I4750_0002 (Invalid) EOF code containing multiple type headers\n EOF1I4750_0003 (Invalid) EOF code containing type section size (Size 1)\n EOF1I4750_0004 (Invalid) EOF code containing type section size (Size 8 - 1 Code section)\n EOF1I4750_0005 (Invalid) EOF code containing type section size (Size 8 - 3 Code sections)\n EOF1I4750_0006 (Invalid) EOF code containing invalid section type (1,0) (First section having a type different than (0,0))\n EOF1I4750_0007 (Invalid) EOF code containing invalid section type (0,1) (First section having a type different than (0,0))\n EOF1I4750_0008 (Invalid) EOF code containing invalid section type (2,3) (First section having a type different than (0,0))\n EOF1V4750_0011 (Invalid) EOF code containing too many code sections\n EOF1I4750_0009 (Invalid) EOF code containing CALLF to a non existing code section\n EOF1I4750_0010 (Invalid) EOF code containing truncated CALLF\n EOF1I4750_0011 (Invalid) EOF code containing deprecated instruction (JUMP)\n EOF1I4750_0012 (Invalid) EOF code containing deprecated instruction (JUMPI)\n EOF1I4750_0013 (Invalid) EOF code containing deprecated instruction (PC)\n EOF1I4750_0014 (Invalid) EOF code containing call to functions without required stack specified in type section\n EOF1I4750_0015 (Invalid) EOF code containing call to functions without required stack NOT specified in type section\n EOF1I4750_0016 (Invalid) EOF code containing function trying to return more items than specified in type section\n EOF1I4750_0017 (Invalid) EOF code containing function exceeding max stack items\n EOF1I4750_0018 (Invalid) EOF code containing function which max stack height causes to exceed max stack items (stack overflow)\n", - "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.cf827ae2.dirty", + "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.5b524c94", "filling-tool-version" : "retesteth-0.3.1-shanghai+commit.acfdfad0.Linux.g++", "generatedTestHash" : "3cd438dae9fb8bee5bda0363a042b6d7a7e4f24a01e5e447c8e5ca92f69745db", "lllcversion" : "Version: 0.5.14-develop.2022.4.6+commit.401d5358.Linux.g++", "solidity" : "Version: 0.8.18-develop.2023.1.16+commit.469d6d4d.Linux.g++", "source" : "src/EOFTestsFiller/EIP4750/validInvalidFiller.yml", - "sourceHash" : "a9ecfcd71347e4e3a3e598742f2dc644fac6ec8de532ad8e7d130164ee98a1a3" + "sourceHash" : "8f112dff591df648e450070d2cb331cb7d42d985c776c7550e42afa78e5e2cfd" }, "vectors" : { "validInvalid_0" : { diff --git a/EOFTests/EIP5450/validInvalid.json b/EOFTests/EIP5450/validInvalid.json index 5f0d6e5acc3..535fc3f7014 100644 --- a/EOFTests/EIP5450/validInvalid.json +++ b/EOFTests/EIP5450/validInvalid.json @@ -2,13 +2,13 @@ "validInvalid" : { "_info" : { "comment" : "Test various examples to see if they are valid or invalid.\nImplements\n EOF1V5450_0001 (Valid) Code with branches having the same stack height\n EOF1V5450_0002 (Valid) Jump table\n EOF1V5450_0003 (Valid) Infinite loop\n EOF1V5450_0004 (Valid) Infinite loop using RJUMPV\n EOF1V5450_0005 (Valid) CALLF branches with the same total of outputs\n EOF1V5450_0006 (Valid) CALLF inputs\n EOF1V5450_0007 (Valid) Validate input for ADD opcode\n EOF1V5450_0008 (Valid) Validate input for MUL opcode\n EOF1V5450_0009 (Valid) Validate input for SUB opcode\n EOF1V5450_0010 (Valid) Validate input for DIV opcode\n EOF1V5450_0011 (Valid) Validate input for SDIV opcode\n EOF1V5450_0012 (Valid) Validate input for MOD opcode\n EOF1V5450_0013 (Valid) Validate input for SMOD opcode\n EOF1V5450_0014 (Valid) Validate input for ADDMOD opcode\n EOF1V5450_0015 (Valid) Validate input for MULMOD opcode\n EOF1V5450_0016 (Valid) Validate input for EXP opcode\n EOF1V5450_0017 (Valid) Validate input for SIGNEXTEND opcode\n EOF1V5450_0018 (Valid) Validate input for LT opcode\n EOF1V5450_0019 (Valid) Validate input for GT opcode\n EOF1V5450_0020 (Valid) Validate input for SLT opcode\n EOF1V5450_0021 (Valid) Validate input for SGT opcode\n EOF1V5450_0022 (Valid) Validate input for EQ opcode\n EOF1V5450_0023 (Valid) Validate input for ISZERO opcode\n EOF1V5450_0024 (Valid) Validate input for AND opcode\n EOF1V5450_0025 (Valid) Validate input for OR opcode\n EOF1V5450_0026 (Valid) Validate input for XOR opcode\n EOF1V5450_0027 (Valid) Validate input for NOT opcode\n EOF1V5450_0028 (Valid) Validate input for BYTE opcode\n EOF1V5450_0029 (Valid) Validate input for SHL opcode\n EOF1V5450_0030 (Valid) Validate input for SHR opcode\n EOF1V5450_0031 (Valid) Validate input for SAR opcode\n EOF1V5450_0032 (Valid) Validate input for SHA3 opcode\n EOF1V5450_0033 (Valid) Validate input for BALANCE opcode\n EOF1V5450_0034 (Valid) Validate input for CALLDATALOAD opcode\n EOF1V5450_0035 (Valid) Validate input for CALLDATACOPY opcode\n EOF1V5450_0036 (Valid) Validate input for CODECOPY opcode\n EOF1V5450_0037 (Valid) Validate input for EXTCODESIZE opcode\n EOF1V5450_0038 (Valid) Validate input for EXTCODECOPY opcode\n EOF1V5450_0039 (Valid) Validate input for RETURNDATACOPY opcode\n EOF1V5450_0040 (Valid) Validate input for EXTCODEHASH opcode\n EOF1V5450_0041 (Valid) Validate input for BLOCKHASH opcode\n EOF1V5450_0042 (Valid) Validate input for POP opcode\n EOF1V5450_0043 (Valid) Validate input for MLOAD opcode\n EOF1V5450_0044 (Valid) Validate input for MSTORE opcode\n EOF1V5450_0045 (Valid) Validate input for MSTORE8 opcode\n EOF1V5450_0046 (Valid) Validate input for SLOAD opcode\n EOF1V5450_0047 (Valid) Validate input for SSTORE opcode\n EOF1V5450_0048 (Valid) Validate input for DUP1 opcode\n EOF1V5450_0049 (Valid) Validate input for DUP2 opcode\n EOF1V5450_0050 (Valid) Validate input for DUP3 opcode\n EOF1V5450_0051 (Valid) Validate input for DUP4 opcode\n EOF1V5450_0052 (Valid) Validate input for DUP5 opcode\n EOF1V5450_0053 (Valid) Validate input for DUP6 opcode\n EOF1V5450_0054 (Valid) Validate input for DUP7 opcode\n EOF1V5450_0055 (Valid) Validate input for DUP8 opcode\n EOF1V5450_0056 (Valid) Validate input for DUP9 opcode\n EOF1V5450_0057 (Valid) Validate input for DUP10 opcode\n EOF1V5450_0058 (Valid) Validate input for DUP11 opcode\n EOF1V5450_0059 (Valid) Validate input for DUP12 opcode\n EOF1V5450_0060 (Valid) Validate input for DUP13 opcode\n EOF1V5450_0061 (Valid) Validate input for DUP14 opcode\n EOF1V5450_0062 (Valid) Validate input for DUP15 opcode\n EOF1V5450_0063 (Valid) Validate input for DUP16 opcode\n EOF1V5450_0064 (Valid) Validate input for SWAP1 opcode\n EOF1V5450_0065 (Valid) Validate input for SWAP2 opcode\n EOF1V5450_0066 (Valid) Validate input for SWAP3 opcode\n EOF1V5450_0067 (Valid) Validate input for SWAP4 opcode\n EOF1V5450_0068 (Valid) Validate input for SWAP5 opcode\n EOF1V5450_0069 (Valid) Validate input for SWAP6 opcode\n EOF1V5450_0070 (Valid) Validate input for SWAP7 opcode\n EOF1V5450_0071 (Valid) Validate input for SWAP8 opcode\n EOF1V5450_0072 (Valid) Validate input for SWAP9 opcode\n EOF1V5450_0073 (Valid) Validate input for SWAP10 opcode\n EOF1V5450_0074 (Valid) Validate input for SWAP11 opcode\n EOF1V5450_0075 (Valid) Validate input for SWAP12 opcode\n EOF1V5450_0076 (Valid) Validate input for SWAP13 opcode\n EOF1V5450_0077 (Valid) Validate input for SWAP14 opcode\n EOF1V5450_0078 (Valid) Validate input for SWAP15 opcode\n EOF1V5450_0079 (Valid) Validate input for SWAP16 opcode\n EOF1V5450_0080 (Valid) Validate input for LOG0 opcode\n EOF1V5450_0081 (Valid) Validate input for LOG1 opcode\n EOF1V5450_0082 (Valid) Validate input for LOG2 opcode\n EOF1V5450_0083 (Valid) Validate input for LOG3 opcode\n EOF1V5450_0084 (Valid) Validate input for LOG4 opcode\n EOF1V5450_0085 (Valid) Validate input for CREATE opcode\n EOF1V5450_0086 (Valid) Validate input for CALL opcode\n EOF1V5450_0087 (Valid) Validate input for RETURN opcode\n EOF1V5450_0088 (Valid) Validate input for DELEGATECALL opcode\n EOF1V5450_0089 (Valid) Validate input for CREATE2 opcode\n EOF1V5450_0090 (Valid) Validate input for STATICCALL opcode\n EOF1V5450_0091 (Valid) Validate input for REVERT opcode\n EOF1V5450_0092 (Valid) Containing terminating opcode RETURN at the end\n EOF1V5450_0093 (Valid) Containing terminating opcode REVERT at the end\n EOF1V5450_0094 (Valid) Loop ending with unconditional RJUMP (a)\n EOF1V5450_0095 (Valid) Loop ending with unconditional RJUMP (b)\n EOF1V5450_0096 (Valid) Functions ending with RETF\n EOF1V5450_0097 (Valid) Stack is not required to be empty on terminating instruction RETURN\n EOF1V5450_0098 (Valid) Stack is not required to be empty on terminating instruction REVERT\n EOF1V5450_0099 (Valid) RETF returning maximum number of outputs (127)\n EOF1I5450_0001 (Invalid) Stack height mismatch for different paths (a)\n EOF1I5450_0002 (Invalid) Stack height mismatch for different paths (b)\n EOF1I5450_0003 (Invalid) Calls returning different number of outputs\n EOF1I5450_0004 (Invalid) Pushing loop\n EOF1I5450_0005 (Invalid) Popping loop\n EOF1I5450_0006 (Invalid) Jump table with different stack heights\n EOF1I5450_0007 (Invalid) Stack underflow for opcode ADD\n EOF1I5450_0008 (Invalid) Stack underflow for opcode MUL\n EOF1I5450_0009 (Invalid) Stack underflow for opcode SUB\n EOF1I5450_0010 (Invalid) Stack underflow for opcode DIV\n EOF1I5450_0011 (Invalid) Stack underflow for opcode SDIV\n EOF1I5450_0012 (Invalid) Stack underflow for opcode MOD\n EOF1I5450_0013 (Invalid) Stack underflow for opcode SMOD\n EOF1I5450_0014 (Invalid) Stack underflow for opcode ADDMOD\n EOF1I5450_0015 (Invalid) Stack underflow for opcode MULMOD\n EOF1I5450_0016 (Invalid) Stack underflow for opcode EXP\n EOF1I5450_0017 (Invalid) Stack underflow for opcode SIGNEXTEND\n EOF1I5450_0018 (Invalid) Stack underflow for opcode LT\n EOF1I5450_0019 (Invalid) Stack underflow for opcode GT\n EOF1I5450_0020 (Invalid) Stack underflow for opcode SLT\n EOF1I5450_0021 (Invalid) Stack underflow for opcode SGT\n EOF1I5450_0022 (Invalid) Stack underflow for opcode EQ\n EOF1I5450_0023 (Invalid) Stack underflow for opcode ISZERO\n EOF1I5450_0024 (Invalid) Stack underflow for opcode AND\n EOF1I5450_0025 (Invalid) Stack underflow for opcode OR\n EOF1I5450_0026 (Invalid) Stack underflow for opcode XOR\n EOF1I5450_0027 (Invalid) Stack underflow for opcode NOT\n EOF1I5450_0028 (Invalid) Stack underflow for opcode BYTE\n EOF1I5450_0029 (Invalid) Stack underflow for opcode SHL\n EOF1I5450_0030 (Invalid) Stack underflow for opcode SHR\n EOF1I5450_0031 (Invalid) Stack underflow for opcode SAR\n EOF1I5450_0032 (Invalid) Stack underflow for opcode SHA3\n EOF1I5450_0033 (Invalid) Stack underflow for opcode BALANCE\n EOF1I5450_0034 (Invalid) Stack underflow for opcode CALLDATALOAD\n EOF1I5450_0035 (Invalid) Stack underflow for opcode CALLDATACOPY\n EOF1I5450_0036 (Invalid) Stack underflow for opcode CODECOPY\n EOF1I5450_0037 (Invalid) Stack underflow for opcode EXTCODESIZE\n EOF1I5450_0038 (Invalid) Stack underflow for opcode EXTCODECOPY\n EOF1I5450_0039 (Invalid) Stack underflow for opcode RETURNDATACOPY\n EOF1I5450_0040 (Invalid) Stack underflow for opcode EXTCODEHASH\n EOF1I5450_0041 (Invalid) Stack underflow for opcode BLOCKHASH\n EOF1I5450_0042 (Invalid) Stack underflow for opcode POP\n EOF1I5450_0043 (Invalid) Stack underflow for opcode MLOAD\n EOF1I5450_0044 (Invalid) Stack underflow for opcode MSTORE\n EOF1I5450_0045 (Invalid) Stack underflow for opcode MSTORE8\n EOF1I5450_0046 (Invalid) Stack underflow for opcode SLOAD\n EOF1I5450_0047 (Invalid) Stack underflow for opcode SSTORE\n EOF1I5450_0048 (Invalid) Stack underflow for opcode DUP1\n EOF1I5450_0049 (Invalid) Stack underflow for opcode DUP2\n EOF1I5450_0050 (Invalid) Stack underflow for opcode DUP3\n EOF1I5450_0051 (Invalid) Stack underflow for opcode DUP4\n EOF1I5450_0052 (Invalid) Stack underflow for opcode DUP5\n EOF1I5450_0053 (Invalid) Stack underflow for opcode DUP6\n EOF1I5450_0054 (Invalid) Stack underflow for opcode DUP7\n EOF1I5450_0055 (Invalid) Stack underflow for opcode DUP8\n EOF1I5450_0056 (Invalid) Stack underflow for opcode DUP9\n EOF1I5450_0057 (Invalid) Stack underflow for opcode DUP10\n EOF1I5450_0058 (Invalid) Stack underflow for opcode DUP11\n EOF1I5450_0059 (Invalid) Stack underflow for opcode DUP12\n EOF1I5450_0060 (Invalid) Stack underflow for opcode DUP13\n EOF1I5450_0061 (Invalid) Stack underflow for opcode DUP14\n EOF1I5450_0062 (Invalid) Stack underflow for opcode DUP15\n EOF1I5450_0063 (Invalid) Stack underflow for opcode DUP16\n EOF1I5450_0064 (Invalid) Stack underflow for opcode SWAP1\n EOF1I5450_0065 (Invalid) Stack underflow for opcode SWAP2\n EOF1I5450_0066 (Invalid) Stack underflow for opcode SWAP3\n EOF1I5450_0067 (Invalid) Stack underflow for opcode SWAP4\n EOF1I5450_0068 (Invalid) Stack underflow for opcode SWAP5\n EOF1I5450_0069 (Invalid) Stack underflow for opcode SWAP6\n EOF1I5450_0070 (Invalid) Stack underflow for opcode SWAP7\n EOF1I5450_0071 (Invalid) Stack underflow for opcode SWAP8\n EOF1I5450_0072 (Invalid) Stack underflow for opcode SWAP9\n EOF1I5450_0073 (Invalid) Stack underflow for opcode SWAP10\n EOF1I5450_0074 (Invalid) Stack underflow for opcode SWAP11\n EOF1I5450_0075 (Invalid) Stack underflow for opcode SWAP12\n EOF1I5450_0076 (Invalid) Stack underflow for opcode SWAP13\n EOF1I5450_0077 (Invalid) Stack underflow for opcode SWAP14\n EOF1I5450_0078 (Invalid) Stack underflow for opcode SWAP15\n EOF1I5450_0079 (Invalid) Stack underflow for opcode SWAP16\n EOF1I5450_0080 (Invalid) Stack underflow for opcode LOG0\n EOF1I5450_0081 (Invalid) Stack underflow for opcode LOG1\n EOF1I5450_0082 (Invalid) Stack underflow for opcode LOG2\n EOF1I5450_0083 (Invalid) Stack underflow for opcode LOG3\n EOF1I5450_0084 (Invalid) Stack underflow for opcode LOG4\n EOF1I5450_0085 (Invalid) Stack underflow for opcode CREATE\n EOF1I5450_0086 (Invalid) Stack underflow for opcode CALL\n EOF1I5450_0087 (Invalid) Stack underflow for opcode RETURN\n EOF1I5450_0088 (Invalid) Stack underflow for opcode DELEGATECALL\n EOF1I5450_0089 (Invalid) Stack underflow for opcode CREATE2\n EOF1I5450_0090 (Invalid) Stack underflow for opcode STATICCALL\n EOF1I5450_0091 (Invalid) Stack underflow for opcode REVERT\n EOF1I5450_0092 (Invalid) Calling function without enough stack items: Function 0 calls Function 1 without enough parameters\n EOF1I5450_0093 (Invalid) Calling function without enough stack items: Function 1 calls Function 2 with enough parameters\n EOF1I5450_0094 (Invalid) Calling function without enough stack items: Function 0 calls Function 1 without enought parameters, Function 1 calls Function 2 without enough parameers\n EOF1I5450_0095 (Invalid) Stack Overflow: Function pushing more than 1024 items to the stack\n EOF1I5450_0096 (Invalid) Stack Overflow: Function 1 when called by Function 0 pushes more than 1024 items to the stack\n EOF1I5450_0097 (Invalid) Function ending with non-terminating instruction (a)\n EOF1I5450_0098 (Invalid) Function ending with non-terminating instruction (b)\n EOF1I5450_0099 (Invalid) Function ending with non-terminating instruction (c)\n EOF1I5450_0100 (Invalid) Function containing unreachable code after RETURN\n EOF1I5450_0101 (Invalid) Function containing unreachable code after REVERT\n EOF1I5450_0102 (Invalid) Unreachable code after RJUMP\n EOF1I5450_0103 (Invalid) Unreachable code after infinite loop\n", - "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.cf827ae2.dirty", + "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.5b524c94", "filling-tool-version" : "retesteth-0.3.1-shanghai+commit.acfdfad0.Linux.g++", - "generatedTestHash" : "df01ce40b288556deb8a46602a053faebf8dabae87707f63f02f7fa28a52b4a0", + "generatedTestHash" : "fcafeba5d8758989c0c16d28654efbe76b82aea3bb8ac6643ef7b0d88270043c", "lllcversion" : "Version: 0.5.14-develop.2022.4.6+commit.401d5358.Linux.g++", "solidity" : "Version: 0.8.18-develop.2023.1.16+commit.469d6d4d.Linux.g++", "source" : "src/EOFTestsFiller/EIP5450/validInvalidFiller.yml", - "sourceHash" : "78349e509c3a77004b1aa8d19dd9affb9f23887da67017932a55ed8ae6eaf50e" + "sourceHash" : "e6ec5f9dbea9c5ac85e9f9ba37ce2c1405d394a0d52e31e1c6049643f80c5328" }, "vectors" : { "validInvalid_0" : { @@ -24,7 +24,7 @@ } }, "validInvalid_1" : { - "code" : "0xef0001010004020001001b04000000000000026000e2020007000e60016002e0000b60036004e000046005600600", + "code" : "0xef0001010004020001001b04000000000000026000e2010007000e60016002e0000b60036004e000046005600600", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -100,7 +100,7 @@ } }, "validInvalid_104" : { - "code" : "0xef0001010004020001001b04000000000000036000e2020005000c6001e0000d60026003e0000660036004600500", + "code" : "0xef0001010004020001001b04000000000000036000e2010005000c6001e0000d60026003e0000660036004600500", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -1417,7 +1417,7 @@ } }, "validInvalid_197" : { - "code" : "0xef0001010004020001000b04000000000000016000e20200010002fe005b", + "code" : "0xef0001010004020001000b04000000000000016000e20100010002fe005b", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -1614,7 +1614,7 @@ } }, "validInvalid_3" : { - "code" : "0xef00010100040200010199040000000000000160c9e2ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fe6800", + "code" : "0xef00010100040200010199040000000000000160c9e2c9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fe6800", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", diff --git a/EOFTests/efExample/validInvalid.json b/EOFTests/efExample/validInvalid.json index dfbbb4969d4..82086c429c3 100644 --- a/EOFTests/efExample/validInvalid.json +++ b/EOFTests/efExample/validInvalid.json @@ -1,14 +1,14 @@ { "validInvalid" : { "_info" : { - "comment" : "Test various examples to see if they are valid or invalid.\nImplements\n EOF1I0001 check that EOF1 with a bad magic number fails\n EOF1I0002 check that EOF1 with a bad version number fails\n EOF1I0003 check that EOF1 with a bad section order fails\n EOF1I0004 check that EOF1 missing a section fails\n EOF1I0005 check that EOF1 with a bad end of sections number fails\n EOF1I0006 check that EOF1 with too many or too few bytes fails\n EOF1I0007 check that EOF1 with a malformed code section fails\n EOF1I0008 check that EOF1 with an illegal opcode fails\n EOF1I0009 check that EOF1 with the wrong maxStackDepth fails\n EOF1I0010 check that return values are not allowed on section 0\n EOF1I0011 check that function calls to code sections that don't exist fail\n EOF1I0012 check that code sections that cause stack underflow fail\n EOF1I0013 check that we can't return more values than we declare\n EOF1I0014 check that code that looks deeper in the stack than the parameters fails\n EOF1I0015 check that code that uses removed opcodes fails\n EOF1I0016 check that code that uses new relative jumps to outside the section fails\n EOF1I0017 check that parameters are not allowed on section 0\n EOF1I0018 inconsistent number of code sections (between types and code)\n EOF1I0019 check that jumps into the middle on an opcode are not allowed\n EOF1I0020 check that you can't get to the same opcode with two different stack heights\n EOF1I0021 empty jump table\n EOF1I0022 stack underflow caused by a function call\n EOF1I0023 sections with unreachable code fail\n EOF1I0024 sections that end with a non-terminator opcode fail\n EOF1I0025 data stack height of 1024 is invalid\n EOF1V0001 check that simple valid EOF1 deploys\n EOF1V0002 check that valid EOF1 with two code sections deploys\n EOF1V0003 check that valid EOF1 with four code sections deploys\n EOF1V0004 check that valid EOF1 can include 0xFE, the designated invalid opcode\n EOF1V0005 check that EOF1 with the right maxStackDepth deploys\n EOF1V0006 check that return values are allowed on code sections that aren't zero\n EOF1V0007 check that function calls to code sections that exist are allowed\n EOF1V0008 check that code that uses a new style relative jump (5C) succeeds\n EOF1V0009 check that parameters are allowed on code sections that aren't zero\n EOF1V0010 parameters are part of the max stack height\n EOF1V0011 check that code that uses a new style conditional jump (5D) succeeds\n EOF1V0012 return values on code sections affect maxStackHeight of the caller\n EOF1V0013 jump tables work\n EOF1V0014 sections that end with a legit terminating opcode are OK\n EOF1V0015 data stack height of 1023 is valid\n", - "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.cf827ae2.dirty", + "comment" : "Test various examples to see if they are valid or invalid.\nImplements\n EOF1I0001 check that EOF1 with a bad magic number fails\n EOF1I0002 check that EOF1 with a bad version number fails\n EOF1I0003 check that EOF1 with a bad section order fails\n EOF1I0004 check that EOF1 missing a section fails\n EOF1I0005 check that EOF1 with a bad end of sections number fails\n EOF1I0006 check that EOF1 with too many or too few bytes fails\n EOF1I0007 check that EOF1 with a malformed code section fails\n EOF1I0008 check that EOF1 with an illegal opcode fails\n EOF1I0009 check that EOF1 with the wrong maxStackDepth fails\n EOF1I0010 check that return values are not allowed on section 0\n EOF1I0011 check that function calls to code sections that don't exist fail\n EOF1I0012 check that code sections that cause stack underflow fail\n EOF1I0013 check that we can't return more values than we declare\n EOF1I0014 check that code that looks deeper in the stack than the parameters fails\n EOF1I0015 check that code that uses removed opcodes fails\n EOF1I0016 check that code that uses new relative jumps to outside the section fails\n EOF1I0017 check that parameters are not allowed on section 0\n EOF1I0018 inconsistent number of code sections (between types and code)\n EOF1I0019 check that jumps into the middle on an opcode are not allowed\n EOF1I0020 check that you can't get to the same opcode with two different stack heights\n EOF1I0022 stack underflow caused by a function call\n EOF1I0023 sections with unreachable code fail\n EOF1I0024 sections that end with a non-terminator opcode fail\n EOF1I0025 data stack height of 1024 is invalid\n EOF1V0001 check that simple valid EOF1 deploys\n EOF1V0002 check that valid EOF1 with two code sections deploys\n EOF1V0003 check that valid EOF1 with four code sections deploys\n EOF1V0004 check that valid EOF1 can include 0xFE, the designated invalid opcode\n EOF1V0005 check that EOF1 with the right maxStackDepth deploys\n EOF1V0006 check that return values are allowed on code sections that aren't zero\n EOF1V0007 check that function calls to code sections that exist are allowed\n EOF1V0008 check that code that uses a new style relative jump (5C) succeeds\n EOF1V0009 check that parameters are allowed on code sections that aren't zero\n EOF1V0010 parameters are part of the max stack height\n EOF1V0011 check that code that uses a new style conditional jump (5D) succeeds\n EOF1V0012 return values on code sections affect maxStackHeight of the caller\n EOF1V0013 jump tables work\n EOF1V0014 sections that end with a legit terminating opcode are OK\n EOF1V0015 data stack height of 1023 is valid\n", + "filling-rpc-server" : "evmone-t8n 0.11.0-dev+commit.5b524c94", "filling-tool-version" : "retesteth-0.3.1-shanghai+commit.acfdfad0.Linux.g++", - "generatedTestHash" : "3a10c600a08b545ac5f4ee691ebf71449186bc46867b23072d5d5dfc60b042fa", + "generatedTestHash" : "26a1a37fcb7f0a35892166b8e01248cd1ab9ae385b1eda0fc54365a5678e6568", "lllcversion" : "Version: 0.5.14-develop.2022.4.6+commit.401d5358.Linux.g++", "solidity" : "Version: 0.8.18-develop.2023.1.16+commit.469d6d4d.Linux.g++", "source" : "src/EOFTestsFiller/efExample/validInvalidFiller.yml", - "sourceHash" : "909c4ea9e9559bc52759e78fe20b04ae294ce23a68f3107918395677fb305392" + "sourceHash" : "10bcabf78da47b0c0645cd454eaa4a0b40d149c2e41eb19e3822db11b88d1ff0" }, "vectors" : { "validInvalid_0" : { @@ -49,7 +49,7 @@ } }, "validInvalid_11" : { - "code" : "0xef0001010004020001000d04000400000000016001e2020002000030503050000bad60a7", + "code" : "0xef0001010004020001000d04000400000000016001e2010002000030503050000bad60a7", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -61,19 +61,6 @@ } }, "validInvalid_12" : { - "code" : "0xef0001010004020001000904000400000000016001e20030503050000bad60a7", - "results" : { - "Cancun" : { - "exception" : "EOF_InvalidCode", - "result" : false - }, - "Prague" : { - "exception" : "EOF_InvalidJumpTableCount", - "result" : false - } - } - }, - "validInvalid_13" : { "code" : "0xef0001010004020001000d04000400000000016001e2020002ffff30503050000bad60a7", "results" : { "Cancun" : { @@ -86,7 +73,7 @@ } } }, - "validInvalid_14" : { + "validInvalid_13" : { "code" : "0xef0001010004020001000804000400000000026001e10001305b000bad60a7", "results" : { "Cancun" : { @@ -99,7 +86,7 @@ } } }, - "validInvalid_15" : { + "validInvalid_14" : { "code" : "0xef0001010004020001000a0400040000000000e00003e00002e0fffa000bad60a7", "results" : { "Cancun" : { @@ -112,7 +99,7 @@ } } }, - "validInvalid_16" : { + "validInvalid_15" : { "code" : "0xef000101000402000100100400040000000003600060006000e10003e10002e1fffa000bad60a7", "results" : { "Cancun" : { @@ -125,7 +112,7 @@ } } }, - "validInvalid_17" : { + "validInvalid_16" : { "code" : "0xef0001010008020001000304000400000000013050000bad60a7", "results" : { "Cancun" : { @@ -138,7 +125,7 @@ } } }, - "validInvalid_18" : { + "validInvalid_17" : { "code" : "0xef0001010004020001000504000100000000016003565b00ef", "results" : { "Cancun" : { @@ -151,7 +138,7 @@ } } }, - "validInvalid_19" : { + "validInvalid_18" : { "code" : "0xef00010100040200010007040001000000000160016003575b00ef", "results" : { "Cancun" : { @@ -164,33 +151,33 @@ } } }, - "validInvalid_2" : { - "code" : "0xef0001010004020001000304000400000000013050000bad60a70bad", + "validInvalid_19" : { + "code" : "0xef0001010004020001000404000100000000016001ff00ef", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_InvalidContainerSize", + "exception" : "EOF_UndefinedInstruction", "result" : false } } }, - "validInvalid_20" : { - "code" : "0xef0001010004020001000404000100000000016001ff00ef", + "validInvalid_2" : { + "code" : "0xef0001010004020001000304000400000000013050000bad60a70bad", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_UndefinedInstruction", + "exception" : "EOF_InvalidContainerSize", "result" : false } } }, - "validInvalid_21" : { + "validInvalid_20" : { "code" : "0xef000101000402000100040400010000000007", "results" : { "Cancun" : { @@ -203,7 +190,7 @@ } } }, - "validInvalid_22" : { + "validInvalid_21" : { "code" : "0xef0001010004020001001004000100000000016001600260036004600560066007f200ef", "results" : { "Cancun" : { @@ -216,7 +203,7 @@ } } }, - "validInvalid_23" : { + "validInvalid_22" : { "code" : "0xef0001010004020001000504000100000000016003565b00ef", "results" : { "Cancun" : { @@ -229,7 +216,7 @@ } } }, - "validInvalid_24" : { + "validInvalid_23" : { "code" : "0xef0001010008020002000300030400040000000001010100013050005030000bad60a7", "results" : { "Cancun" : { @@ -241,7 +228,7 @@ } } }, - "validInvalid_25" : { + "validInvalid_24" : { "code" : "0xef000101000802000200040002040004000000000100010001e300010030e40bad60a7", "results" : { "Cancun" : { @@ -253,7 +240,7 @@ } } }, - "validInvalid_26" : { + "validInvalid_25" : { "code" : "0xef000101000802000200030001040004000000000100010001e30001300bad60a7", "results" : { "Cancun" : { @@ -266,7 +253,7 @@ } } }, - "validInvalid_27" : { + "validInvalid_26" : { "code" : "0xef000101000802000200040002040004000000000101000001e300010050e40bad60a7", "results" : { "Cancun" : { @@ -279,7 +266,7 @@ } } }, - "validInvalid_28" : { + "validInvalid_27" : { "code" : "0xef000101000c0200030028000b001f04000400000003ff000a000a00640064e30002e30002e30002e30002e30002e30002e30002e30002e30002e30002e30001e300013030300030303030303030303030e4e30001e30001e30001e30001e30001e30001e30001e30001e30001e30001e40bad60a7", "results" : { "Cancun" : { @@ -291,7 +278,7 @@ } } }, - "validInvalid_29" : { + "validInvalid_28" : { "code" : "0xef000101000c0200030029000b001f0400040000000400000a000a00640064e30002e30002e30002e30002e30002e30002e30002e30002e30002e30002e30001e30001303030300030303030303030303030e4e30001e30001e30001e30001e30001e30001e30001e30001e30001e30001e40bad60a7", "results" : { "Cancun" : { @@ -304,8 +291,8 @@ } } }, - "validInvalid_3" : { - "code" : "0xef0001010004020001000304000400000000013050000bad60a7", + "validInvalid_29" : { + "code" : "0xef0001010010020004000300030003000304000400000000010101000100000001010100013050005030003050005030000bad60a7", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -316,8 +303,8 @@ } } }, - "validInvalid_30" : { - "code" : "0xef0001010010020004000300030003000304000400000000010101000100000001010100013050005030003050005030000bad60a7", + "validInvalid_3" : { + "code" : "0xef0001010004020001000304000400000000013050000bad60a7", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", @@ -328,7 +315,7 @@ } } }, - "validInvalid_31" : { + "validInvalid_30" : { "code" : "0xef000101001002000400030005000700070400040000000001000000020000000300000001305000303050500030303050505000305030503050000bad60a7", "results" : { "Cancun" : { @@ -340,7 +327,7 @@ } } }, - "validInvalid_32" : { + "validInvalid_31" : { "code" : "0xef000101001002000400030005000700070400040000000001000000000000000300000001305000b000020030303050505000305030503050000bad60a7", "results" : { "Cancun" : { @@ -353,7 +340,7 @@ } } }, - "validInvalid_33" : { + "validInvalid_32" : { "code" : "0xef000101001002000400030005000700070400040000000001000000020000000300000001305000b0000f0030303050505000305030503050000bad60a7", "results" : { "Cancun" : { @@ -366,7 +353,7 @@ } } }, - "validInvalid_34" : { + "validInvalid_33" : { "code" : "0xef0001010008020002000300030400040000000001010000013050005050000bad60a7", "results" : { "Cancun" : { @@ -379,7 +366,7 @@ } } }, - "validInvalid_35" : { + "validInvalid_34" : { "code" : "0xef0001010008020002000300030400040000000001000100013050003030000bad60a7", "results" : { "Cancun" : { @@ -392,7 +379,7 @@ } } }, - "validInvalid_36" : { + "validInvalid_35" : { "code" : "0xef0001010008020002000300030400040000000001010100013050003091000bad60a7", "results" : { "Cancun" : { @@ -405,7 +392,7 @@ } } }, - "validInvalid_37" : { + "validInvalid_36" : { "code" : "0xef0001010004020001000304000400010000013050fe0bad60a7", "results" : { "Cancun" : { @@ -418,7 +405,7 @@ } } }, - "validInvalid_38" : { + "validInvalid_37" : { "code" : "0xef0001010008020002000300030400040000000001020000023050005050000bad60a7", "results" : { "Cancun" : { @@ -430,7 +417,7 @@ } } }, - "validInvalid_39" : { + "validInvalid_38" : { "code" : "0xef0001010004020001000304000400000100013050fe0bad60a7", "results" : { "Cancun" : { @@ -443,33 +430,33 @@ } } }, - "validInvalid_4" : { - "code" : "0xef00010100040200010003040004000000000130ef000bad60a7", + "validInvalid_39" : { + "code" : "0xef0001010004020001000304000400000000033050000bad60a7", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_UndefinedInstruction", + "exception" : "EOF_InvalidMaxStackHeight", "result" : false } } }, - "validInvalid_40" : { - "code" : "0xef0001010004020001000304000400000000033050000bad60a7", + "validInvalid_4" : { + "code" : "0xef00010100040200010003040004000000000130ef000bad60a7", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_InvalidMaxStackHeight", + "exception" : "EOF_UndefinedInstruction", "result" : false } } }, - "validInvalid_41" : { + "validInvalid_40" : { "code" : "0xef00010100040200010001040004000000000530503050000bad60a7", "results" : { "Cancun" : { @@ -482,7 +469,7 @@ } } }, - "validInvalid_42" : { + "validInvalid_41" : { "code" : "0xef0001010004020001000304000400000000013050620bad60a7", "results" : { "Cancun" : { @@ -495,7 +482,7 @@ } } }, - "validInvalid_43" : { + "validInvalid_42" : { "code" : "0xef00010100040200010003040001ff00000001305000ef", "results" : { "Cancun" : { @@ -508,7 +495,7 @@ } } }, - "validInvalid_44" : { + "validInvalid_43" : { "code" : "0xef020101000402000100030400010000000001305000ef", "results" : { "Cancun" : { @@ -521,7 +508,7 @@ } } }, - "validInvalid_45" : { + "validInvalid_44" : { "code" : "0xef000001000402000100030400010000000001305000ef", "results" : { "Cancun" : { @@ -534,7 +521,7 @@ } } }, - "validInvalid_46" : { + "validInvalid_45" : { "code" : "0xef000201000402000100030400010000000001305000ef", "results" : { "Cancun" : { @@ -547,7 +534,7 @@ } } }, - "validInvalid_47" : { + "validInvalid_46" : { "code" : "0xef000102000100030100040400010000000001305000ef", "results" : { "Cancun" : { @@ -560,7 +547,7 @@ } } }, - "validInvalid_48" : { + "validInvalid_47" : { "code" : "0xef000102000100030400010100040000000001305000ef", "results" : { "Cancun" : { @@ -573,7 +560,7 @@ } } }, - "validInvalid_49" : { + "validInvalid_48" : { "code" : "0xef000102000100030400010000000001305000ef", "results" : { "Cancun" : { @@ -586,32 +573,32 @@ } } }, - "validInvalid_5" : { - "code" : "0xef0001010004020001000304000400000000013050fe0bad60a7", + "validInvalid_49" : { + "code" : "0xef00010100040400010000000001305000ef", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "result" : true + "exception" : "EOF_CodeSectionMissing", + "result" : false } } }, - "validInvalid_50" : { - "code" : "0xef00010100040400010000000001305000ef", + "validInvalid_5" : { + "code" : "0xef0001010004020001000304000400000000013050fe0bad60a7", "results" : { "Cancun" : { "exception" : "EOF_InvalidCode", "result" : false }, "Prague" : { - "exception" : "EOF_CodeSectionMissing", - "result" : false + "result" : true } } }, - "validInvalid_51" : { + "validInvalid_50" : { "code" : "0xef000101000402000100030000000001305000ef", "results" : { "Cancun" : { @@ -624,7 +611,7 @@ } } }, - "validInvalid_52" : { + "validInvalid_51" : { "code" : "0xef0001010004020001000a040016000000000338600060003938601df3ef0001010004020001000304001d0000000001385000", "results" : { "Cancun" : { @@ -636,7 +623,7 @@ } } }, - "validInvalid_53" : { + "validInvalid_52" : { "code" : "0x610badfe", "results" : { "Cancun" : { diff --git a/src/EOFTestsFiller/EIP4200/validInvalidFiller.yml b/src/EOFTestsFiller/EIP4200/validInvalidFiller.yml index 865b9e221d8..78a041ae452 100644 --- a/src/EOFTestsFiller/EIP4200/validInvalidFiller.yml +++ b/src/EOFTestsFiller/EIP4200/validInvalidFiller.yml @@ -3,7 +3,6 @@ validInvalid: comment: | Test various examples to see if they are valid or invalid. Implements - # >@f1 EOF1V4200_0001 (Valid) EOF code containing RJUMP (Positive, Negative) EOF1V4200_0002 (Valid) EOF code containing RJUMP (Zero) EOF1V4200_0003 (Valid) EOF code containing RJUMPI (Positive) @@ -58,13 +57,11 @@ validInvalid: EOF1I4200_0039 (Invalid) EOF code containing RJUMPV with target PUSH immediate EOF1I4200_0040 (Invalid) EOF code containing RJUMPV with target other RJUMPV immediate EOF1I4200_0041 (Invalid) EOF code containing RJUMPV with target CALLF immediate - # <@f1 forks: - ">=Cancun" vectors: - # >@f2 # EOF1V4200_0001 (Valid) EOF code containing RJUMP (Positive, Negative) # Code: RJUMP(push) save: SSTORE STOP push: PUSH1(1) PUSH1(1) RJUMP(save) - data: | @@ -1210,4 +1207,3 @@ validInvalid: "Cancun" : "EOF_InvalidCode" ">=Prague" : "EOF_InvalidJumpDestination" - # <@f2 diff --git a/src/EOFTestsFiller/EIP5450/validInvalidFiller.yml b/src/EOFTestsFiller/EIP5450/validInvalidFiller.yml index f77eb47ff5e..1a4c467da43 100644 --- a/src/EOFTestsFiller/EIP5450/validInvalidFiller.yml +++ b/src/EOFTestsFiller/EIP5450/validInvalidFiller.yml @@ -255,7 +255,7 @@ validInvalid: 0002 # max stack: 2 # Code section 0 6000 # PUSH1(0) - e2020007000e # RJUMPV(7,14) + e2010007000e # RJUMPV(7,14) 6001 # PUSH1(1) 6002 # PUSH1(2) e0000b # RJUMP(11) @@ -311,7 +311,7 @@ validInvalid: 0001 # max stack: 1 # Code section 0 60c9 # PUSH1(201) - e2ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fe68 # RJUMPV(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-408) + e2c9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fe68 # RJUMPV(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-408) 00 # STOP # Data section (empty) expectException: @@ -3339,7 +3339,7 @@ validInvalid: 0003 # max stack: 3 # Code section 0 6000 # PUSH1(0) - e2020005000c # RJUMPV(5,12) + e2010005000c # RJUMPV(5,12) 6001 # PUSH1(1) e0000d # RJUMP(13) 6002 # PUSH1(2) @@ -5848,7 +5848,7 @@ validInvalid: 0001 # max stack: 1 # Code section 0 6000 # PUSH1(0) - e20200010002 # RJUMPV(1,2) + e20100010002 # RJUMPV(1,2) fe # INVALID 00 # STOP 5b # NOP diff --git a/src/EOFTestsFiller/efExample/validInvalidFiller.yml b/src/EOFTestsFiller/efExample/validInvalidFiller.yml index ab9ab48d56a..55525fd5be9 100644 --- a/src/EOFTestsFiller/efExample/validInvalidFiller.yml +++ b/src/EOFTestsFiller/efExample/validInvalidFiller.yml @@ -23,7 +23,6 @@ validInvalid: EOF1I0018 inconsistent number of code sections (between types and code) EOF1I0019 check that jumps into the middle on an opcode are not allowed EOF1I0020 check that you can't get to the same opcode with two different stack heights - EOF1I0021 empty jump table EOF1I0022 stack underflow caused by a function call EOF1I0023 sections with unreachable code fail EOF1I0024 sections that end with a non-terminator opcode fail @@ -369,7 +368,7 @@ validInvalid: 0001 # Max stack height 1 # Code segment 0 code 6001 # 0 PUSH1 1 - E202 # 2 RJUMPV (empty table) + E201 # 2 RJUMPV (empty table) 0002 # 4 0 -> +2 0000 # 6 1 -> 0 3050 # 8 ADDRESS, POP @@ -382,33 +381,6 @@ validInvalid: - # EOF1I0021 empty jump table - - data: | - :label EOF1I0021 :raw 0x - # EOF deployed code - ef0001 # Magic followed by version - 010004 # One code segment - 020001 # One code segment - 0009 # code seg 0: 9 bytes - 040004 # Four byte data segment - 00 # End of header - # Code segment 0 header - 00 # Zero inputs - 00 # Zero outputs - 0001 # Max stack height 1 - # Code segment 0 code - 6001 # 0 PUSH1 1 - E200 # 2 RJUMPV (empty table) - 3050 # 4 ADDRESS, POP - 3050 # 6 ADDRESS, POP - 00 # 8 STOP - # Data segment - 0bad60A7 # 4 bytes (valid) - expectException: - "Cancun" : "EOF_InvalidCode" - ">=Prague" : "EOF_InvalidJumpTableCount" - - # EOF1I0019 check that jumps into the middle on an opcode are not allowed - data: | :label EOF1I0019 :raw 0x