From 9fce462de5d6702b2a95e91d875756de42119703 Mon Sep 17 00:00:00 2001 From: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com> Date: Tue, 6 Sep 2022 20:11:04 -0400 Subject: [PATCH 1/4] desubmodule AntelopeIO/wasm-spec-tests@112c682 Co-authored-by: Jeffrey Smith II Co-authored-by: Lin Huang Co-authored-by: Damon Revoe Co-authored-by: systemv Co-authored-by: Ted Cahall @ EOS Network Foundation Co-authored-by: Scott Arnette Co-authored-by: Jingjun Zhao Co-authored-by: Christopher Gundlach --- .gitmodules | 3 - wasm-spec-tests | 1 - wasm-spec-tests/CMakeLists.txt | 24 + wasm-spec-tests/LICENSE | 28 + wasm-spec-tests/README.md | 60 + .../generated-tests/CMakeLists.txt | 39 + wasm-spec-tests/generated-tests/address.cpp | 153 + wasm-spec-tests/generated-tests/align.cpp | 543 ++ .../generated-tests/binary-leb128.cpp | 526 ++ wasm-spec-tests/generated-tests/binary.cpp | 148 + wasm-spec-tests/generated-tests/block.cpp | 22 + wasm-spec-tests/generated-tests/br.cpp | 22 + wasm-spec-tests/generated-tests/br_if.cpp | 22 + wasm-spec-tests/generated-tests/br_table.cpp | 22 + .../generated-tests/break-drop.cpp | 22 + wasm-spec-tests/generated-tests/call.cpp | 39 + .../generated-tests/call_indirect.cpp | 39 + wasm-spec-tests/generated-tests/const.cpp | 7099 +++++++++++++++++ .../generated-tests/conversions.cpp | 39 + wasm-spec-tests/generated-tests/custom.cpp | 64 + .../generated-tests/endianness.cpp | 22 + wasm-spec-tests/generated-tests/f32.cpp | 22 + .../generated-tests/f32_bitwise.cpp | 22 + wasm-spec-tests/generated-tests/f32_cmp.cpp | 22 + wasm-spec-tests/generated-tests/f64.cpp | 22 + .../generated-tests/f64_bitwise.cpp | 22 + wasm-spec-tests/generated-tests/f64_cmp.cpp | 22 + wasm-spec-tests/generated-tests/fac.cpp | 39 + .../generated-tests/float_exprs.cpp | 2017 +++++ .../generated-tests/float_literals.cpp | 43 + .../generated-tests/float_memory.cpp | 127 + .../generated-tests/float_misc.cpp | 22 + wasm-spec-tests/generated-tests/forward.cpp | 22 + wasm-spec-tests/generated-tests/func.cpp | 64 + wasm-spec-tests/generated-tests/func_ptrs.cpp | 81 + wasm-spec-tests/generated-tests/globals.cpp | 60 + wasm-spec-tests/generated-tests/i32.cpp | 39 + wasm-spec-tests/generated-tests/i64.cpp | 39 + wasm-spec-tests/generated-tests/if.cpp | 39 + wasm-spec-tests/generated-tests/int_exprs.cpp | 396 + .../generated-tests/int_literals.cpp | 22 + wasm-spec-tests/generated-tests/labels.cpp | 22 + .../generated-tests/left-to-right.cpp | 22 + wasm-spec-tests/generated-tests/load.cpp | 22 + wasm-spec-tests/generated-tests/local_get.cpp | 22 + wasm-spec-tests/generated-tests/local_set.cpp | 22 + wasm-spec-tests/generated-tests/local_tee.cpp | 22 + wasm-spec-tests/generated-tests/loop.cpp | 22 + wasm-spec-tests/generated-tests/main.cpp | 41 + wasm-spec-tests/generated-tests/memory.cpp | 167 + .../generated-tests/memory_grow.cpp | 119 + .../generated-tests/memory_redundancy.cpp | 22 + .../generated-tests/memory_size.cpp | 85 + .../generated-tests/memory_trap.cpp | 77 + wasm-spec-tests/generated-tests/nop.cpp | 22 + wasm-spec-tests/generated-tests/return.cpp | 22 + wasm-spec-tests/generated-tests/select.cpp | 39 + wasm-spec-tests/generated-tests/stack.cpp | 43 + wasm-spec-tests/generated-tests/start.cpp | 85 + wasm-spec-tests/generated-tests/store.cpp | 22 + wasm-spec-tests/generated-tests/switch.cpp | 22 + wasm-spec-tests/generated-tests/traps.cpp | 81 + wasm-spec-tests/generated-tests/type.cpp | 22 + .../generated-tests/unreachable.cpp | 39 + wasm-spec-tests/generated-tests/unwind.cpp | 39 + .../generated-tests/wasm_spec_tests.hpp.in | 32 + .../generated-tests/wasms/address.0.wasm | Bin 0 -> 8010 bytes .../generated-tests/wasms/address.2.wasm | Bin 0 -> 11704 bytes .../generated-tests/wasms/address.3.wasm | Bin 0 -> 1799 bytes .../generated-tests/wasms/address.4.wasm | Bin 0 -> 1821 bytes .../generated-tests/wasms/align.0.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.1.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.10.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.106.wasm | Bin 0 -> 6340 bytes .../generated-tests/wasms/align.107.wasm | Bin 0 -> 664 bytes .../generated-tests/wasms/align.11.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.12.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.13.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.14.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.15.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.16.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.17.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.18.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.19.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.2.wasm | Bin 0 -> 288 bytes .../generated-tests/wasms/align.20.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/align.21.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/align.22.wasm | Bin 0 -> 329 bytes .../generated-tests/wasms/align.3.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.4.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.5.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.6.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.7.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.8.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/align.9.wasm | Bin 0 -> 321 bytes .../wasms/binary-leb128.0.wasm | Bin 0 -> 308 bytes .../wasms/binary-leb128.1.wasm | Bin 0 -> 308 bytes .../wasms/binary-leb128.10.wasm | Bin 0 -> 329 bytes .../wasms/binary-leb128.11.wasm | Bin 0 -> 329 bytes .../wasms/binary-leb128.12.wasm | Bin 0 -> 329 bytes .../wasms/binary-leb128.13.wasm | Bin 0 -> 315 bytes .../wasms/binary-leb128.14.wasm | Bin 0 -> 320 bytes .../wasms/binary-leb128.15.wasm | Bin 0 -> 320 bytes .../wasms/binary-leb128.16.wasm | Bin 0 -> 315 bytes .../wasms/binary-leb128.17.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.18.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.19.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.2.wasm | Bin 0 -> 309 bytes .../wasms/binary-leb128.20.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.21.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.22.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.23.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.24.wasm | Bin 0 -> 313 bytes .../wasms/binary-leb128.3.wasm | Bin 0 -> 309 bytes .../wasms/binary-leb128.4.wasm | Bin 0 -> 304 bytes .../wasms/binary-leb128.5.wasm | Bin 0 -> 315 bytes .../wasms/binary-leb128.6.wasm | Bin 0 -> 308 bytes .../wasms/binary-leb128.7.wasm | Bin 0 -> 308 bytes .../wasms/binary-leb128.8.wasm | Bin 0 -> 314 bytes .../wasms/binary-leb128.9.wasm | Bin 0 -> 314 bytes .../generated-tests/wasms/binary.0.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/binary.1.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/binary.2.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/binary.3.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/binary.48.wasm | Bin 0 -> 317 bytes .../generated-tests/wasms/binary.53.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/binary.54.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/block.0.wasm | Bin 0 -> 5298 bytes .../generated-tests/wasms/br.0.wasm | Bin 0 -> 7251 bytes .../generated-tests/wasms/br_if.0.wasm | Bin 0 -> 8892 bytes .../generated-tests/wasms/br_table.0.wasm | Bin 0 -> 23439 bytes .../generated-tests/wasms/break-drop.0.wasm | Bin 0 -> 401 bytes .../generated-tests/wasms/call.0.wasm | Bin 0 -> 6729 bytes .../wasms/call_indirect.0.wasm | Bin 0 -> 12615 bytes .../generated-tests/wasms/const.0.wasm | Bin 0 -> 318 bytes .../generated-tests/wasms/const.1.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/const.100.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.101.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.102.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.103.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.104.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.105.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.106.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.107.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.108.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.109.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.110.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.111.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.112.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.113.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.114.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.115.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.116.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.117.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.118.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.119.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.12.wasm | Bin 0 -> 318 bytes .../generated-tests/wasms/const.120.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.121.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.122.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.123.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.124.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.125.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.126.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.127.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.128.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.129.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.13.wasm | Bin 0 -> 327 bytes .../generated-tests/wasms/const.130.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.131.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.132.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.133.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.134.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.135.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.136.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.137.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.138.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.139.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.140.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.141.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.142.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.143.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.144.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.145.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.146.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.147.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.148.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.149.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.150.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.151.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.152.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.153.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.154.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.155.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.156.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.157.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.158.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.159.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.16.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.160.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.161.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.162.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.163.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.164.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.165.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.166.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.167.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.168.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.169.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.17.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.170.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.171.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.172.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.173.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.174.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.175.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.176.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.177.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.178.wasm | Bin 0 -> 574 bytes .../generated-tests/wasms/const.179.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.18.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.180.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.181.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.182.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.183.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.184.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.185.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.186.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.187.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.188.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.189.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.19.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.190.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.191.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.192.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.193.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.194.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.195.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.196.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.197.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.198.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.199.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.20.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.200.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.201.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.202.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.203.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.204.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.205.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.206.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.207.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.208.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.209.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.21.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.210.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.211.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.212.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.213.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.214.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.215.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.216.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.217.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.218.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.219.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.22.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.220.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.221.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.222.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.223.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.224.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.225.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.226.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.227.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.228.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.229.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.23.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.230.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.231.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.232.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.233.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.234.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.235.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.236.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.237.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.238.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.239.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.24.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.240.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.241.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.242.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.243.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.244.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.245.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.246.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.247.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.248.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.249.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.25.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.250.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.251.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.252.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.253.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.254.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.255.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.256.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.257.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.258.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.259.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.260.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.261.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.262.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.263.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.264.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.265.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.266.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.267.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.268.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.269.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.270.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.271.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.272.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.273.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.274.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.275.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.276.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.277.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.278.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.279.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.280.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.281.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.282.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.283.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.284.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.285.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.286.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.287.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.288.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.289.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.290.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.291.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.292.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.293.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.294.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.295.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.296.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.297.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.298.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.299.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.30.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.300.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.301.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.302.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.303.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.304.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.305.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.306.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.307.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.308.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.309.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.31.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.310.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.311.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.312.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.313.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.314.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.315.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.316.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.317.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.318.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.319.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.320.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.321.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.322.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.323.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.324.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.325.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.326.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.327.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.328.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.329.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.330.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.331.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.332.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.333.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.334.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.335.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.336.wasm | Bin 0 -> 578 bytes .../generated-tests/wasms/const.337.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.338.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.339.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.34.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.340.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.341.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.342.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.343.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.344.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.345.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.346.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.347.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.348.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.349.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.35.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.350.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.351.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.352.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.353.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.354.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.355.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.356.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.357.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.358.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.359.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.360.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.361.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.362.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.363.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.364.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.365.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.366.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.367.wasm | Bin 0 -> 580 bytes .../generated-tests/wasms/const.38.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.39.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.4.wasm | Bin 0 -> 318 bytes .../generated-tests/wasms/const.40.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.41.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.42.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.43.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.44.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.45.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.5.wasm | Bin 0 -> 322 bytes .../generated-tests/wasms/const.50.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.51.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.54.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.55.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.58.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.59.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.60.wasm | Bin 0 -> 321 bytes .../generated-tests/wasms/const.61.wasm | Bin 0 -> 325 bytes .../generated-tests/wasms/const.68.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.69.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.70.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.71.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.72.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.73.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.74.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.75.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.76.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.77.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.78.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.79.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.8.wasm | Bin 0 -> 318 bytes .../generated-tests/wasms/const.80.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.81.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.82.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.83.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.84.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.85.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.86.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.87.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.88.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.89.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.9.wasm | Bin 0 -> 327 bytes .../generated-tests/wasms/const.90.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.91.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.92.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.93.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.94.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.95.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.96.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.97.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.98.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/const.99.wasm | Bin 0 -> 572 bytes .../generated-tests/wasms/conversions.0.wasm | Bin 0 -> 47622 bytes .../generated-tests/wasms/custom.0.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/custom.1.wasm | Bin 0 -> 308 bytes .../generated-tests/wasms/custom.2.wasm | Bin 0 -> 332 bytes .../generated-tests/wasms/endianness.0.wasm | Bin 0 -> 7172 bytes .../generated-tests/wasms/f32.0.wasm | Bin 0 -> 238786 bytes .../generated-tests/wasms/f32_bitwise.0.wasm | Bin 0 -> 45967 bytes .../generated-tests/wasms/f32_cmp.0.wasm | Bin 0 -> 309756 bytes .../generated-tests/wasms/f64.0.wasm | Bin 0 -> 243960 bytes .../generated-tests/wasms/f64_bitwise.0.wasm | Bin 0 -> 46669 bytes .../generated-tests/wasms/f64_cmp.0.wasm | Bin 0 -> 314604 bytes .../generated-tests/wasms/fac.0.wasm | Bin 0 -> 1218 bytes .../generated-tests/wasms/float_exprs.0.wasm | Bin 0 -> 1451 bytes .../generated-tests/wasms/float_exprs.1.wasm | Bin 0 -> 2261 bytes .../generated-tests/wasms/float_exprs.10.wasm | Bin 0 -> 535 bytes .../generated-tests/wasms/float_exprs.11.wasm | Bin 0 -> 535 bytes .../generated-tests/wasms/float_exprs.12.wasm | Bin 0 -> 793 bytes .../generated-tests/wasms/float_exprs.13.wasm | Bin 0 -> 793 bytes .../generated-tests/wasms/float_exprs.14.wasm | Bin 0 -> 585 bytes .../generated-tests/wasms/float_exprs.15.wasm | Bin 0 -> 690 bytes .../generated-tests/wasms/float_exprs.16.wasm | Bin 0 -> 1766 bytes .../generated-tests/wasms/float_exprs.17.wasm | Bin 0 -> 2301 bytes .../generated-tests/wasms/float_exprs.18.wasm | Bin 0 -> 2343 bytes .../generated-tests/wasms/float_exprs.19.wasm | Bin 0 -> 2399 bytes .../generated-tests/wasms/float_exprs.2.wasm | Bin 0 -> 888 bytes .../generated-tests/wasms/float_exprs.20.wasm | Bin 0 -> 2399 bytes .../generated-tests/wasms/float_exprs.21.wasm | Bin 0 -> 2731 bytes .../generated-tests/wasms/float_exprs.22.wasm | Bin 0 -> 2729 bytes .../generated-tests/wasms/float_exprs.23.wasm | Bin 0 -> 1756 bytes .../generated-tests/wasms/float_exprs.24.wasm | Bin 0 -> 1786 bytes .../generated-tests/wasms/float_exprs.25.wasm | Bin 0 -> 2102 bytes .../generated-tests/wasms/float_exprs.26.wasm | Bin 0 -> 1167 bytes .../generated-tests/wasms/float_exprs.27.wasm | Bin 0 -> 1933 bytes .../generated-tests/wasms/float_exprs.28.wasm | Bin 0 -> 1198 bytes .../generated-tests/wasms/float_exprs.29.wasm | Bin 0 -> 1728 bytes .../generated-tests/wasms/float_exprs.3.wasm | Bin 0 -> 875 bytes .../generated-tests/wasms/float_exprs.30.wasm | Bin 0 -> 2084 bytes .../generated-tests/wasms/float_exprs.31.wasm | Bin 0 -> 2082 bytes .../generated-tests/wasms/float_exprs.32.wasm | Bin 0 -> 2084 bytes .../generated-tests/wasms/float_exprs.33.wasm | Bin 0 -> 2082 bytes .../generated-tests/wasms/float_exprs.34.wasm | Bin 0 -> 838 bytes .../generated-tests/wasms/float_exprs.35.wasm | Bin 0 -> 1176 bytes .../generated-tests/wasms/float_exprs.36.wasm | Bin 0 -> 1958 bytes .../generated-tests/wasms/float_exprs.37.wasm | Bin 0 -> 2010 bytes .../generated-tests/wasms/float_exprs.38.wasm | Bin 0 -> 1280 bytes .../generated-tests/wasms/float_exprs.39.wasm | Bin 0 -> 5353 bytes .../generated-tests/wasms/float_exprs.4.wasm | Bin 0 -> 535 bytes .../generated-tests/wasms/float_exprs.40.wasm | Bin 0 -> 1410 bytes .../generated-tests/wasms/float_exprs.41.wasm | Bin 0 -> 1475 bytes .../generated-tests/wasms/float_exprs.42.wasm | Bin 0 -> 4725 bytes .../generated-tests/wasms/float_exprs.43.wasm | Bin 0 -> 5174 bytes .../generated-tests/wasms/float_exprs.44.wasm | Bin 0 -> 5038 bytes .../generated-tests/wasms/float_exprs.45.wasm | Bin 0 -> 4941 bytes .../generated-tests/wasms/float_exprs.46.wasm | Bin 0 -> 4805 bytes .../generated-tests/wasms/float_exprs.47.wasm | Bin 0 -> 818 bytes .../generated-tests/wasms/float_exprs.48.wasm | Bin 0 -> 653 bytes .../generated-tests/wasms/float_exprs.49.wasm | Bin 0 -> 669 bytes .../generated-tests/wasms/float_exprs.5.wasm | Bin 0 -> 1357 bytes .../generated-tests/wasms/float_exprs.50.wasm | Bin 0 -> 636 bytes .../generated-tests/wasms/float_exprs.51.wasm | Bin 0 -> 620 bytes .../generated-tests/wasms/float_exprs.52.wasm | Bin 0 -> 634 bytes .../generated-tests/wasms/float_exprs.53.wasm | Bin 0 -> 1096 bytes .../generated-tests/wasms/float_exprs.54.wasm | Bin 0 -> 618 bytes .../generated-tests/wasms/float_exprs.55.wasm | Bin 0 -> 805 bytes .../generated-tests/wasms/float_exprs.56.wasm | Bin 0 -> 2936 bytes .../generated-tests/wasms/float_exprs.57.wasm | Bin 0 -> 2172 bytes .../generated-tests/wasms/float_exprs.58.wasm | Bin 0 -> 2172 bytes .../generated-tests/wasms/float_exprs.59.wasm | Bin 0 -> 1031 bytes .../generated-tests/wasms/float_exprs.6.wasm | Bin 0 -> 533 bytes .../generated-tests/wasms/float_exprs.60.wasm | Bin 0 -> 1099 bytes .../generated-tests/wasms/float_exprs.61.wasm | Bin 0 -> 1837 bytes .../generated-tests/wasms/float_exprs.62.wasm | Bin 0 -> 2869 bytes .../generated-tests/wasms/float_exprs.63.wasm | Bin 0 -> 1597 bytes .../generated-tests/wasms/float_exprs.64.wasm | Bin 0 -> 1597 bytes .../generated-tests/wasms/float_exprs.65.wasm | Bin 0 -> 1628 bytes .../generated-tests/wasms/float_exprs.66.wasm | Bin 0 -> 1162 bytes .../generated-tests/wasms/float_exprs.67.wasm | Bin 0 -> 1840 bytes .../generated-tests/wasms/float_exprs.68.wasm | Bin 0 -> 2366 bytes .../generated-tests/wasms/float_exprs.69.wasm | Bin 0 -> 2704 bytes .../generated-tests/wasms/float_exprs.7.wasm | Bin 0 -> 700 bytes .../generated-tests/wasms/float_exprs.70.wasm | Bin 0 -> 2384 bytes .../generated-tests/wasms/float_exprs.71.wasm | Bin 0 -> 1832 bytes .../generated-tests/wasms/float_exprs.72.wasm | Bin 0 -> 1917 bytes .../generated-tests/wasms/float_exprs.73.wasm | Bin 0 -> 1918 bytes .../generated-tests/wasms/float_exprs.74.wasm | Bin 0 -> 2145 bytes .../generated-tests/wasms/float_exprs.75.wasm | Bin 0 -> 987 bytes .../generated-tests/wasms/float_exprs.76.wasm | Bin 0 -> 2241 bytes .../generated-tests/wasms/float_exprs.77.wasm | Bin 0 -> 952 bytes .../generated-tests/wasms/float_exprs.78.wasm | Bin 0 -> 853 bytes .../generated-tests/wasms/float_exprs.79.wasm | Bin 0 -> 2953 bytes .../generated-tests/wasms/float_exprs.8.wasm | Bin 0 -> 533 bytes .../generated-tests/wasms/float_exprs.80.wasm | Bin 0 -> 974 bytes .../generated-tests/wasms/float_exprs.81.wasm | Bin 0 -> 902 bytes .../generated-tests/wasms/float_exprs.82.wasm | Bin 0 -> 1370 bytes .../generated-tests/wasms/float_exprs.83.wasm | Bin 0 -> 1618 bytes .../generated-tests/wasms/float_exprs.84.wasm | Bin 0 -> 782 bytes .../generated-tests/wasms/float_exprs.85.wasm | Bin 0 -> 800 bytes .../generated-tests/wasms/float_exprs.86.wasm | Bin 0 -> 1815 bytes .../generated-tests/wasms/float_exprs.87.wasm | Bin 0 -> 5061 bytes .../generated-tests/wasms/float_exprs.88.wasm | Bin 0 -> 1144 bytes .../generated-tests/wasms/float_exprs.89.wasm | Bin 0 -> 1356 bytes .../generated-tests/wasms/float_exprs.9.wasm | Bin 0 -> 535 bytes .../generated-tests/wasms/float_exprs.90.wasm | Bin 0 -> 962 bytes .../generated-tests/wasms/float_exprs.91.wasm | Bin 0 -> 915 bytes .../generated-tests/wasms/float_exprs.92.wasm | Bin 0 -> 2020 bytes .../generated-tests/wasms/float_exprs.93.wasm | Bin 0 -> 661 bytes .../generated-tests/wasms/float_exprs.94.wasm | Bin 0 -> 873 bytes .../generated-tests/wasms/float_exprs.95.wasm | Bin 0 -> 932 bytes .../wasms/float_literals.0.wasm | Bin 0 -> 10300 bytes .../wasms/float_literals.1.wasm | Bin 0 -> 598 bytes .../generated-tests/wasms/float_memory.0.wasm | Bin 0 -> 1302 bytes .../generated-tests/wasms/float_memory.1.wasm | Bin 0 -> 1352 bytes .../generated-tests/wasms/float_memory.2.wasm | Bin 0 -> 1303 bytes .../generated-tests/wasms/float_memory.3.wasm | Bin 0 -> 1353 bytes .../generated-tests/wasms/float_memory.4.wasm | Bin 0 -> 1302 bytes .../generated-tests/wasms/float_memory.5.wasm | Bin 0 -> 1352 bytes .../generated-tests/wasms/float_misc.0.wasm | Bin 0 -> 66574 bytes .../generated-tests/wasms/forward.0.wasm | Bin 0 -> 839 bytes .../generated-tests/wasms/func.0.wasm | Bin 0 -> 6984 bytes .../generated-tests/wasms/func.1.wasm | Bin 0 -> 364 bytes .../generated-tests/wasms/func.3.wasm | Bin 0 -> 776 bytes .../generated-tests/wasms/func_ptrs.0.wasm | Bin 0 -> 825 bytes .../generated-tests/wasms/func_ptrs.8.wasm | Bin 0 -> 1780 bytes .../generated-tests/wasms/func_ptrs.9.wasm | Bin 0 -> 683 bytes .../generated-tests/wasms/globals.0.wasm | Bin 0 -> 5146 bytes .../generated-tests/wasms/globals.17.wasm | Bin 0 -> 313 bytes .../generated-tests/wasms/i32.0.wasm | Bin 0 -> 32611 bytes .../generated-tests/wasms/i64.0.wasm | Bin 0 -> 34037 bytes .../generated-tests/wasms/if.0.wasm | Bin 0 -> 9695 bytes .../generated-tests/wasms/int_exprs.0.wasm | Bin 0 -> 1088 bytes .../generated-tests/wasms/int_exprs.1.wasm | Bin 0 -> 755 bytes .../generated-tests/wasms/int_exprs.10.wasm | Bin 0 -> 752 bytes .../generated-tests/wasms/int_exprs.11.wasm | Bin 0 -> 554 bytes .../generated-tests/wasms/int_exprs.12.wasm | Bin 0 -> 1338 bytes .../generated-tests/wasms/int_exprs.13.wasm | Bin 0 -> 1339 bytes .../generated-tests/wasms/int_exprs.14.wasm | Bin 0 -> 1338 bytes .../generated-tests/wasms/int_exprs.15.wasm | Bin 0 -> 1305 bytes .../generated-tests/wasms/int_exprs.16.wasm | Bin 0 -> 1307 bytes .../generated-tests/wasms/int_exprs.17.wasm | Bin 0 -> 1306 bytes .../generated-tests/wasms/int_exprs.18.wasm | Bin 0 -> 490 bytes .../generated-tests/wasms/int_exprs.2.wasm | Bin 0 -> 634 bytes .../generated-tests/wasms/int_exprs.3.wasm | Bin 0 -> 1032 bytes .../generated-tests/wasms/int_exprs.4.wasm | Bin 0 -> 1019 bytes .../generated-tests/wasms/int_exprs.5.wasm | Bin 0 -> 1019 bytes .../generated-tests/wasms/int_exprs.6.wasm | Bin 0 -> 594 bytes .../generated-tests/wasms/int_exprs.7.wasm | Bin 0 -> 594 bytes .../generated-tests/wasms/int_exprs.8.wasm | Bin 0 -> 1032 bytes .../generated-tests/wasms/int_exprs.9.wasm | Bin 0 -> 752 bytes .../generated-tests/wasms/int_literals.0.wasm | Bin 0 -> 4081 bytes .../generated-tests/wasms/labels.0.wasm | Bin 0 -> 3410 bytes .../wasms/left-to-right.0.wasm | Bin 0 -> 11847 bytes .../generated-tests/wasms/load.0.wasm | Bin 0 -> 4359 bytes .../generated-tests/wasms/local_get.0.wasm | Bin 0 -> 2751 bytes .../generated-tests/wasms/local_set.0.wasm | Bin 0 -> 2751 bytes .../generated-tests/wasms/local_tee.0.wasm | Bin 0 -> 6619 bytes .../generated-tests/wasms/loop.0.wasm | Bin 0 -> 7877 bytes .../generated-tests/wasms/memory.0.wasm | Bin 0 -> 309 bytes .../generated-tests/wasms/memory.1.wasm | Bin 0 -> 309 bytes .../generated-tests/wasms/memory.2.wasm | Bin 0 -> 310 bytes .../generated-tests/wasms/memory.25.wasm | Bin 0 -> 5111 bytes .../generated-tests/wasms/memory.3.wasm | Bin 0 -> 311 bytes .../generated-tests/wasms/memory.6.wasm | Bin 0 -> 570 bytes .../generated-tests/wasms/memory.7.wasm | Bin 0 -> 570 bytes .../generated-tests/wasms/memory.8.wasm | Bin 0 -> 571 bytes .../generated-tests/wasms/memory_grow.0.wasm | Bin 0 -> 1610 bytes .../generated-tests/wasms/memory_grow.1.wasm | Bin 0 -> 1028 bytes .../generated-tests/wasms/memory_grow.2.wasm | Bin 0 -> 1107 bytes .../generated-tests/wasms/memory_grow.3.wasm | Bin 0 -> 1548 bytes .../generated-tests/wasms/memory_grow.4.wasm | Bin 0 -> 4251 bytes .../wasms/memory_redundancy.0.wasm | Bin 0 -> 1110 bytes .../generated-tests/wasms/memory_size.0.wasm | Bin 0 -> 823 bytes .../generated-tests/wasms/memory_size.1.wasm | Bin 0 -> 823 bytes .../generated-tests/wasms/memory_size.2.wasm | Bin 0 -> 972 bytes .../generated-tests/wasms/memory_size.3.wasm | Bin 0 -> 980 bytes .../generated-tests/wasms/memory_trap.0.wasm | Bin 0 -> 1032 bytes .../generated-tests/wasms/memory_trap.1.wasm | Bin 0 -> 6978 bytes .../generated-tests/wasms/nop.0.wasm | Bin 0 -> 9903 bytes .../generated-tests/wasms/return.0.wasm | Bin 0 -> 6724 bytes .../generated-tests/wasms/select.0.wasm | Bin 0 -> 10508 bytes .../generated-tests/wasms/stack.0.wasm | Bin 0 -> 1056 bytes .../generated-tests/wasms/stack.1.wasm | Bin 0 -> 754 bytes .../generated-tests/wasms/start.3.wasm | Bin 0 -> 733 bytes .../generated-tests/wasms/start.4.wasm | Bin 0 -> 733 bytes .../generated-tests/wasms/start.5.wasm | Bin 0 -> 344 bytes .../generated-tests/wasms/start.6.wasm | Bin 0 -> 344 bytes .../generated-tests/wasms/start.7.wasm | Bin 0 -> 331 bytes .../generated-tests/wasms/store.0.wasm | Bin 0 -> 652 bytes .../generated-tests/wasms/switch.0.wasm | Bin 0 -> 3021 bytes .../generated-tests/wasms/traps.0.wasm | Bin 0 -> 660 bytes .../generated-tests/wasms/traps.1.wasm | Bin 0 -> 589 bytes .../generated-tests/wasms/traps.2.wasm | Bin 0 -> 1283 bytes .../generated-tests/wasms/traps.3.wasm | Bin 0 -> 1125 bytes .../generated-tests/wasms/type.0.wasm | Bin 0 -> 376 bytes .../generated-tests/wasms/unreachable.0.wasm | Bin 0 -> 3496 bytes .../generated-tests/wasms/unwind.0.wasm | Bin 0 -> 6503 bytes wasm-spec-tests/generator/CMakeLists.txt | 3 + .../altered-wasms/address/address.0.wasm | Bin 0 -> 8010 bytes .../altered-wasms/address/address.2.wasm | Bin 0 -> 11704 bytes .../altered-wasms/address/address.3.wasm | Bin 0 -> 1799 bytes .../altered-wasms/address/address.4.wasm | Bin 0 -> 1821 bytes .../generator/altered-wasms/address/notes.md | 9 + .../altered-wasms/align/align.0.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.1.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.10.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.11.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.12.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.13.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.14.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.15.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.16.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.17.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.18.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.19.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.2.wasm | Bin 0 -> 288 bytes .../altered-wasms/align/align.20.wasm | Bin 0 -> 322 bytes .../altered-wasms/align/align.21.wasm | Bin 0 -> 325 bytes .../altered-wasms/align/align.22.wasm | Bin 0 -> 329 bytes .../altered-wasms/align/align.3.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.4.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.5.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.6.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.7.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.8.wasm | Bin 0 -> 321 bytes .../altered-wasms/align/align.9.wasm | Bin 0 -> 321 bytes .../generator/altered-wasms/align/notes.md | 4 + .../binary-leb128/binary-leb128.10.wasm | Bin 0 -> 329 bytes .../binary-leb128/binary-leb128.11.wasm | Bin 0 -> 329 bytes .../binary-leb128/binary-leb128.12.wasm | Bin 0 -> 329 bytes .../binary-leb128/binary-leb128.4.wasm | Bin 0 -> 304 bytes .../altered-wasms/binary-leb128/notes.md | 13 + .../altered-wasms/br_table/br_table.0.cpp | 717 ++ .../altered-wasms/br_table/br_table.0.wasm | Bin 0 -> 23439 bytes .../generator/altered-wasms/br_table/notes.md | 4 + .../altered-wasms/func_ptrs/func_ptrs.0.wasm | Bin 0 -> 825 bytes .../altered-wasms/func_ptrs/notes.md | 5 + .../altered-wasms/memory/memory.0.wasm | Bin 0 -> 309 bytes .../altered-wasms/memory/memory.1.wasm | Bin 0 -> 309 bytes .../altered-wasms/memory/memory.3.wasm | Bin 0 -> 311 bytes .../memory_grow/memory_grow.0.cpp | 120 + .../memory_grow/memory_grow.0.wasm | Bin 0 -> 1610 bytes .../memory_grow/memory_grow.1.cpp | 39 + .../memory_grow/memory_grow.1.wasm | Bin 0 -> 1028 bytes .../memory_grow/memory_grow.2.cpp | 43 + .../memory_grow/memory_grow.2.wasm | Bin 0 -> 1107 bytes .../altered-wasms/memory_grow/notes.md | 16 + .../memory_size/memory_size.0.cpp | 41 + .../memory_size/memory_size.0.wasm | Bin 0 -> 823 bytes .../memory_size/memory_size.2.cpp | 51 + .../memory_size/memory_size.2.wasm | Bin 0 -> 972 bytes .../altered-wasms/memory_size/notes.md | 9 + .../generator/altered-wasms/start/notes.md | 9 + .../altered-wasms/start/start.5.wasm | Bin 0 -> 344 bytes .../altered-wasms/start/start.6.wasm | Bin 0 -> 344 bytes .../altered-wasms/start/start.7.wasm | Bin 0 -> 331 bytes wasm-spec-tests/generator/compile_tests.py | 36 + .../generator/eosio_test_generator.cpp | 431 + .../generator/eosio_test_generator.hpp | 17 + .../eosio_wasm_spec_test_generator.cpp | 129 + .../generator/generate_eosio_tests.py | 163 + wasm-spec-tests/generator/generated_wasm.py | 183 + wasm-spec-tests/generator/lookahead.py | 26 + wasm-spec-tests/generator/picojson.hpp | 1109 +++ wasm-spec-tests/generator/regexes.py | 11 + .../generator/setup_eosio_tests.py | 202 + wasm-spec-tests/generator/test_wasm.py | 187 + wasm-spec-tests/generator/wasm.py | 106 + 738 files changed, 16891 insertions(+), 4 deletions(-) delete mode 160000 wasm-spec-tests create mode 100644 wasm-spec-tests/CMakeLists.txt create mode 100644 wasm-spec-tests/LICENSE create mode 100644 wasm-spec-tests/README.md create mode 100644 wasm-spec-tests/generated-tests/CMakeLists.txt create mode 100644 wasm-spec-tests/generated-tests/address.cpp create mode 100644 wasm-spec-tests/generated-tests/align.cpp create mode 100644 wasm-spec-tests/generated-tests/binary-leb128.cpp create mode 100644 wasm-spec-tests/generated-tests/binary.cpp create mode 100644 wasm-spec-tests/generated-tests/block.cpp create mode 100644 wasm-spec-tests/generated-tests/br.cpp create mode 100644 wasm-spec-tests/generated-tests/br_if.cpp create mode 100644 wasm-spec-tests/generated-tests/br_table.cpp create mode 100644 wasm-spec-tests/generated-tests/break-drop.cpp create mode 100644 wasm-spec-tests/generated-tests/call.cpp create mode 100644 wasm-spec-tests/generated-tests/call_indirect.cpp create mode 100644 wasm-spec-tests/generated-tests/const.cpp create mode 100644 wasm-spec-tests/generated-tests/conversions.cpp create mode 100644 wasm-spec-tests/generated-tests/custom.cpp create mode 100644 wasm-spec-tests/generated-tests/endianness.cpp create mode 100644 wasm-spec-tests/generated-tests/f32.cpp create mode 100644 wasm-spec-tests/generated-tests/f32_bitwise.cpp create mode 100644 wasm-spec-tests/generated-tests/f32_cmp.cpp create mode 100644 wasm-spec-tests/generated-tests/f64.cpp create mode 100644 wasm-spec-tests/generated-tests/f64_bitwise.cpp create mode 100644 wasm-spec-tests/generated-tests/f64_cmp.cpp create mode 100644 wasm-spec-tests/generated-tests/fac.cpp create mode 100644 wasm-spec-tests/generated-tests/float_exprs.cpp create mode 100644 wasm-spec-tests/generated-tests/float_literals.cpp create mode 100644 wasm-spec-tests/generated-tests/float_memory.cpp create mode 100644 wasm-spec-tests/generated-tests/float_misc.cpp create mode 100644 wasm-spec-tests/generated-tests/forward.cpp create mode 100644 wasm-spec-tests/generated-tests/func.cpp create mode 100644 wasm-spec-tests/generated-tests/func_ptrs.cpp create mode 100644 wasm-spec-tests/generated-tests/globals.cpp create mode 100644 wasm-spec-tests/generated-tests/i32.cpp create mode 100644 wasm-spec-tests/generated-tests/i64.cpp create mode 100644 wasm-spec-tests/generated-tests/if.cpp create mode 100644 wasm-spec-tests/generated-tests/int_exprs.cpp create mode 100644 wasm-spec-tests/generated-tests/int_literals.cpp create mode 100644 wasm-spec-tests/generated-tests/labels.cpp create mode 100644 wasm-spec-tests/generated-tests/left-to-right.cpp create mode 100644 wasm-spec-tests/generated-tests/load.cpp create mode 100644 wasm-spec-tests/generated-tests/local_get.cpp create mode 100644 wasm-spec-tests/generated-tests/local_set.cpp create mode 100644 wasm-spec-tests/generated-tests/local_tee.cpp create mode 100644 wasm-spec-tests/generated-tests/loop.cpp create mode 100644 wasm-spec-tests/generated-tests/main.cpp create mode 100644 wasm-spec-tests/generated-tests/memory.cpp create mode 100644 wasm-spec-tests/generated-tests/memory_grow.cpp create mode 100644 wasm-spec-tests/generated-tests/memory_redundancy.cpp create mode 100644 wasm-spec-tests/generated-tests/memory_size.cpp create mode 100644 wasm-spec-tests/generated-tests/memory_trap.cpp create mode 100644 wasm-spec-tests/generated-tests/nop.cpp create mode 100644 wasm-spec-tests/generated-tests/return.cpp create mode 100644 wasm-spec-tests/generated-tests/select.cpp create mode 100644 wasm-spec-tests/generated-tests/stack.cpp create mode 100644 wasm-spec-tests/generated-tests/start.cpp create mode 100644 wasm-spec-tests/generated-tests/store.cpp create mode 100644 wasm-spec-tests/generated-tests/switch.cpp create mode 100644 wasm-spec-tests/generated-tests/traps.cpp create mode 100644 wasm-spec-tests/generated-tests/type.cpp create mode 100644 wasm-spec-tests/generated-tests/unreachable.cpp create mode 100644 wasm-spec-tests/generated-tests/unwind.cpp create mode 100644 wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in create mode 100644 wasm-spec-tests/generated-tests/wasms/address.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/address.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/address.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/address.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.10.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.106.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.107.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.11.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.12.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.13.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.14.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.15.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.16.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.17.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.18.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.19.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.20.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.21.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.22.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.6.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.7.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/align.9.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.11.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.12.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.13.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.14.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.15.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.16.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.17.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.23.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.6.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary-leb128.9.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.48.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.53.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/binary.54.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/block.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/br.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/br_if.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/br_table.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/call.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.100.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.101.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.102.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.103.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.104.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.105.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.106.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.107.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.108.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.109.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.110.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.111.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.112.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.113.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.114.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.115.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.116.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.117.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.118.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.119.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.12.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.120.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.121.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.122.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.123.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.124.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.125.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.126.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.127.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.128.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.129.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.13.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.130.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.131.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.132.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.133.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.134.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.135.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.136.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.137.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.138.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.139.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.140.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.141.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.142.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.143.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.144.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.145.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.146.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.147.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.148.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.149.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.150.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.151.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.152.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.153.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.154.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.155.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.156.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.157.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.158.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.159.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.16.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.160.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.161.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.162.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.163.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.164.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.165.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.166.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.167.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.168.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.169.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.17.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.170.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.171.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.172.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.173.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.174.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.175.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.176.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.177.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.178.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.179.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.18.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.180.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.181.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.182.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.183.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.184.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.185.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.186.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.187.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.188.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.189.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.19.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.190.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.191.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.192.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.193.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.194.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.195.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.196.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.197.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.198.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.199.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.20.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.200.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.201.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.202.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.203.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.204.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.205.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.206.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.207.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.208.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.209.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.21.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.210.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.211.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.212.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.213.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.214.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.215.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.216.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.217.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.218.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.219.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.22.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.220.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.221.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.222.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.223.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.224.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.225.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.226.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.227.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.228.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.229.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.23.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.230.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.231.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.232.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.233.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.234.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.235.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.236.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.237.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.238.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.239.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.24.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.240.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.241.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.242.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.243.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.244.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.245.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.246.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.247.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.248.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.249.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.25.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.250.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.251.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.252.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.253.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.254.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.255.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.256.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.257.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.258.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.259.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.260.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.261.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.262.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.263.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.264.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.265.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.266.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.267.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.268.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.269.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.270.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.271.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.272.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.273.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.274.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.275.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.276.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.277.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.278.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.279.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.280.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.281.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.282.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.283.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.284.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.285.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.286.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.287.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.288.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.289.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.290.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.291.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.292.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.293.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.294.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.295.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.296.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.297.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.298.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.299.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.30.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.300.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.301.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.302.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.303.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.304.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.305.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.306.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.307.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.308.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.309.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.31.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.310.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.311.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.312.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.313.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.314.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.315.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.316.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.317.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.318.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.319.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.320.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.321.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.322.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.323.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.324.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.325.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.326.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.327.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.328.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.329.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.330.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.331.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.332.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.333.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.334.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.335.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.336.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.337.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.338.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.339.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.34.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.340.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.341.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.342.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.343.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.344.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.345.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.346.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.347.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.348.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.349.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.35.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.350.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.351.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.352.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.353.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.354.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.355.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.356.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.357.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.358.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.359.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.360.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.361.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.362.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.363.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.364.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.365.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.366.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.367.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.38.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.39.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.40.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.41.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.42.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.43.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.44.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.45.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.50.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.51.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.54.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.55.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.58.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.59.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.60.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.61.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.68.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.69.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.70.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.71.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.72.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.73.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.74.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.75.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.76.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.77.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.78.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.79.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.80.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.81.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.82.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.83.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.84.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.85.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.86.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.87.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.88.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.89.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.9.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.90.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.91.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.92.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.93.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.94.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.95.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.96.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.97.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.98.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/const.99.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/conversions.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/custom.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/custom.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/custom.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/endianness.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/f32.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/f32_bitwise.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/f32_cmp.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/f64.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/f64_bitwise.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/fac.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.10.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.14.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.15.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.17.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.19.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.20.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.21.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.22.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.23.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.24.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.25.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.28.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.30.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.33.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.36.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.38.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.40.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.41.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.42.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.45.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.46.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.48.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.53.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.54.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.56.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.60.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.61.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.65.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.66.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.67.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.68.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.69.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.72.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.73.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.75.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.78.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.83.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.86.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.89.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.91.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.93.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.94.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_memory.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/float_misc.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/forward.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/func.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/func.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/func.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/globals.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/globals.17.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/i32.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/i64.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/if.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.12.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.13.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.14.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.17.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.18.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/int_literals.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/labels.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/load.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/local_get.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/local_set.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/loop.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.25.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.6.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.7.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory.8.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_grow.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_grow.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_grow.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_size.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_size.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_size.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/nop.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/return.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/select.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/stack.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/stack.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/start.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/start.4.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/start.5.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/start.6.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/start.7.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/store.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/switch.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/traps.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/traps.1.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/traps.2.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/traps.3.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/type.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm create mode 100644 wasm-spec-tests/generated-tests/wasms/unwind.0.wasm create mode 100644 wasm-spec-tests/generator/CMakeLists.txt create mode 100644 wasm-spec-tests/generator/altered-wasms/address/address.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/address/address.2.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/address/address.3.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/address/address.4.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/address/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.1.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.10.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.11.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.12.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.13.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.14.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.15.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.16.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.17.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.18.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.19.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.2.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.20.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.21.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.22.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.3.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.4.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.5.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.6.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.7.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.8.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/align.9.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/align/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.11.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.12.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.4.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/binary-leb128/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.cpp create mode 100644 wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/br_table/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory/memory.1.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory/memory.3.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.cpp create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.cpp create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.cpp create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/memory_size/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/start/notes.md create mode 100644 wasm-spec-tests/generator/altered-wasms/start/start.5.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/start/start.6.wasm create mode 100644 wasm-spec-tests/generator/altered-wasms/start/start.7.wasm create mode 100644 wasm-spec-tests/generator/compile_tests.py create mode 100644 wasm-spec-tests/generator/eosio_test_generator.cpp create mode 100644 wasm-spec-tests/generator/eosio_test_generator.hpp create mode 100644 wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp create mode 100644 wasm-spec-tests/generator/generate_eosio_tests.py create mode 100644 wasm-spec-tests/generator/generated_wasm.py create mode 100644 wasm-spec-tests/generator/lookahead.py create mode 100644 wasm-spec-tests/generator/picojson.hpp create mode 100644 wasm-spec-tests/generator/regexes.py create mode 100644 wasm-spec-tests/generator/setup_eosio_tests.py create mode 100644 wasm-spec-tests/generator/test_wasm.py create mode 100644 wasm-spec-tests/generator/wasm.py diff --git a/.gitmodules b/.gitmodules index 63c0c5e722..59ab4da36d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,6 +16,3 @@ [submodule "tests/abieos"] path = tests/abieos url = https://github.com/AntelopeIO/abieos -[submodule "wasm-spec-tests"] - path = wasm-spec-tests - url = https://github.com/AntelopeIO/wasm-spec-tests diff --git a/wasm-spec-tests b/wasm-spec-tests deleted file mode 160000 index 112c682951..0000000000 --- a/wasm-spec-tests +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 112c68295101916ee4c3a5bea90853a205640ed2 diff --git a/wasm-spec-tests/CMakeLists.txt b/wasm-spec-tests/CMakeLists.txt new file mode 100644 index 0000000000..bbc0373bcc --- /dev/null +++ b/wasm-spec-tests/CMakeLists.txt @@ -0,0 +1,24 @@ +# ################################################################################################## +# Defines the eosio-wasm-spec-tests generator and generated tests +# ################################################################################################## +cmake_minimum_required(VERSION 3.8) +set(VERSION_MAJOR 0) +set(VERSION_MINOR 0) +set(VERSION_PATCH 1) +project(eos-wasm-spec-tests VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) + +if (VERSION_SUFFIX) + set(VERSION_FULL "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}-${VERSION_SUFFIX}") +else() + set(VERSION_FULL "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") +endif() + +message(STATUS "Building eos-wasm-spec-tests v${VERSION_FULL}...") + +option(WASM_SPEC_TESTS "Build WASM Spec Tests" OFF) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_EXTENSIONS ON) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + +add_subdirectory(generator) diff --git a/wasm-spec-tests/LICENSE b/wasm-spec-tests/LICENSE new file mode 100644 index 0000000000..cbc888e2c3 --- /dev/null +++ b/wasm-spec-tests/LICENSE @@ -0,0 +1,28 @@ +AntelopeIO/wasm-spec-tests + +Copyright (c) 2021-2022 EOS Network Foundation (ENF) and its contributors. All rights reserved. +This ENF software is based upon: + +EOSIO/eosio-wasm-spect-tests + +Copyright (c) 2019 block.one and its contributors. All rights reserved. + +The MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/wasm-spec-tests/README.md b/wasm-spec-tests/README.md new file mode 100644 index 0000000000..eeaaaed74e --- /dev/null +++ b/wasm-spec-tests/README.md @@ -0,0 +1,60 @@ +# WASM Spec Tests + +This repo provides a set of unit tests that can be used to check a WASM Backend's conformance to the +WebAssembly spec. + +## Tests +### How tests are generated +1. The JSON file for a spec test suite is read. +2. For each spec test wasm defined in the JSON: + - All the spec tests are created in a C++ file to match the function declaration as interpreted from the JSON. + - Test are categorized into `assert_trap`/`assert_exhaustion` and `assert_return`. + - Tests are split up into `sub_apply` functions based on the rules defined below. + - An `apply` function is written that switches on the third parameter to decide which `sub_apply` function to run. + - A map of the function name and the index in order is created to be used for merging. +3. Unit Tests are generated based on the rules below. +4. The generated C++ files are compiled and linked, without optimizations to prevent the empty functions from being optimized out. +5. The generated WASM is combined with the original test wasm. + - The imports and apply functions (and any helper functions) from the generated wasm are combined with the test function definitions from the spec test wasm. + - Any necessary shifting of type/import/function/call/exports numbers is done. + - This is where the generated map from above is used. +6. The newly created merged wasms and unit test C++ files are copied into the appropriate directory in the Leap repo. + + +### How tests are split up +- Within a spec test suite, each `assert_trap` and `assert_exhaustion` test case is given a unique `sub_apply` function. + - All tests in a suite are in the same WASM file, so the test that is run is based on the `test.name` passed in to `apply` (which calls the correct `sub_apply`). +- Within a test suite, `assert_return` tests are grouped into sets of 100. + - This is due to the limit on 1024 locals and 1024 func defs built into nodeos. Some spec tests had too many functions to have a `sub_apply` per test, and some had too many variables to be put all into one `sub_apply`. + - 100 was found to be the number that did not exceed this maximum for all the tests. + - The tests also have some reliance on ordering (a store may need to be called before a load for example). + - 100 also works out to make sure the right ordering is achieved. + +- The unit tests are split into 2 groups. All of the `assert_trap` tests are grouped into one `BOOST_DATA_TEST_CASE` and all the `assert_return` tests are grouped into a second `BOOST_DATA_TEST_CASE` +- The unit test files are grouped by test suite (all `address` tests are together, all `call` tests together, etc.) + + +### How to generate tests +- Run the `setup_eosio_tests.py` script with no options to see the help text. + + +### Known Issues +- memory_grow.3 -- Will fail if not deleted from generated tests. + - Unclear how to hand alter this to have memory properly zeroed where expected. + +- start.7 -- Will fail if not deleted from generated tests. + - Imports "print" from "spectest". Changing to any of the `eosio::print` functions results in "start function must be nullary" due to their requiring a parameter. + +- globals.2 -- Delete from generated tests or it segfaults due to missing wasm. + - `eosio-wasm2wast` error "mutable globals cannot be exported" when converting to wast. + - `wasm2wat` provided by WABT handles this correctly, implying an error in CDT. +- globals.3 -- Delete from generated tests or it segfaults due to missing wasm. + - `eosio-wasm2wast` error "mutable globals cannot be exported" when converting to wast. + - `wasm2wat` provided by WABT handles this correctly, implying an error in CDT. +- globals.14 -- Delete from generated tests or it segfaults due to missing wasm. + - Imports "global_i32" from "spectest". + - Unclear what an appropriate substition would be. + +## License + +[MIT](./LICENSE) diff --git a/wasm-spec-tests/generated-tests/CMakeLists.txt b/wasm-spec-tests/generated-tests/CMakeLists.txt new file mode 100644 index 0000000000..87225c902c --- /dev/null +++ b/wasm-spec-tests/generated-tests/CMakeLists.txt @@ -0,0 +1,39 @@ +### Build contracts with cdt if available ### +include(ExternalProject) + +set(SPEC_TEST_WASM_DIR "${CMAKE_CURRENT_SOURCE_DIR}/wasms") +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/wasm_spec_tests.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/include/wasm_spec_tests.hpp ESCAPE_QUOTES) + +### BUILD UNIT TEST EXECUTABLE ### +file(GLOB WASM_TESTS "*.cpp") # find all unit test suites +add_executable( wasm_spec_test ${WASM_TESTS}) # build unit tests as one executable + +target_link_libraries( wasm_spec_test eosio_chain_wrap chainbase eosio_testing fc appbase ${PLATFORM_SPECIFIC_LIBS} ) + +target_compile_options(wasm_spec_test PUBLIC -DDISABLE_EOSLIB_SERIALIZE) +target_include_directories( wasm_spec_test PUBLIC + ${CMAKE_SOURCE_DIR}/libraries/testing/include + ${CMAKE_CURRENT_BINARY_DIR}/include ) + +### MARK TEST SUITES FOR EXECUTION ### +foreach(TEST_SUITE ${WASM_TESTS}) # create an independent target for each test suite + execute_process(COMMAND bash -c "grep -Eo 'BOOST_DATA_TEST_CASE\\(\\w*' '${TEST_SUITE}' | cut -c 22-" OUTPUT_VARIABLE SUITE_NAME OUTPUT_STRIP_TRAILING_WHITESPACE) # get the test suite name from the *.cpp file + if (NOT "" STREQUAL "${SUITE_NAME}") # ignore empty lines + string(REPLACE "\n" ";" SN_LIST ${SUITE_NAME}) + foreach(SN ${SN_LIST}) + foreach(RUNTIME ${EOSIO_WASM_RUNTIMES}) + get_test_property(${SN}_unit_test_${RUNTIME} LABELS TEST_LABEL) + if ("NOTFOUND" STREQUAL "${TEST_LABEL}") # prevent duplicates + add_test(NAME ${SN}_unit_test_${RUNTIME} COMMAND wasm_spec_test --run_test=${SN} --report_level=detailed --color_output --catch_system_errors=no -- --${RUNTIME}) + set_property(TEST ${SN}_unit_test_${RUNTIME} PROPERTY LABELS wasm_spec_tests) + # build list of tests to run during coverage testing + if(ctest_tests) + string(APPEND ctest_tests "|") + endif() + string(APPEND ctest_tests "${SN}_unit_test_${RUNTIME}") + endif() + endforeach() + endforeach(SN) + endif() +endforeach(TEST_SUITE) +set(ctest_tests "'${ctest_tests}' -j8") # surround test list string in apostrophies diff --git a/wasm-spec-tests/generated-tests/address.cpp b/wasm-spec-tests/generated-tests/address.cpp new file mode 100644 index 0000000000..72d79e483a --- /dev/null +++ b/wasm-spec-tests/generated-tests/address.cpp @@ -0,0 +1,153 @@ +#include + +const string wasm_str_address_0 = base_dir + "/address.0.wasm"; +std::vector wasm_address_0= read_wasm(wasm_str_address_0.c_str()); + +BOOST_DATA_TEST_CASE(address_0_check_throw, boost::unit_test::data::xrange(0,11), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(address_0_pass, boost::unit_test::data::xrange(11,12), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_address_2 = base_dir + "/address.2.wasm"; +std::vector wasm_address_2= read_wasm(wasm_str_address_2.c_str()); + +BOOST_DATA_TEST_CASE(address_2_check_throw, boost::unit_test::data::xrange(0,15), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(address_2_pass, boost::unit_test::data::xrange(15,17), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_address_3 = base_dir + "/address.3.wasm"; +std::vector wasm_address_3= read_wasm(wasm_str_address_3.c_str()); + +BOOST_DATA_TEST_CASE(address_3_check_throw, boost::unit_test::data::xrange(0,3), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(address_3_pass, boost::unit_test::data::xrange(3,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_address_4 = base_dir + "/address.4.wasm"; +std::vector wasm_address_4= read_wasm(wasm_str_address_4.c_str()); + +BOOST_DATA_TEST_CASE(address_4_check_throw, boost::unit_test::data::xrange(0,3), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(address_4_pass, boost::unit_test::data::xrange(3,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_address_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/align.cpp b/wasm-spec-tests/generated-tests/align.cpp new file mode 100644 index 0000000000..9814a6db58 --- /dev/null +++ b/wasm-spec-tests/generated-tests/align.cpp @@ -0,0 +1,543 @@ +#include + +const string wasm_str_align_0 = base_dir + "/align.0.wasm"; +std::vector wasm_align_0= read_wasm(wasm_str_align_0.c_str()); + +BOOST_DATA_TEST_CASE(align_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_1 = base_dir + "/align.1.wasm"; +std::vector wasm_align_1= read_wasm(wasm_str_align_1.c_str()); + +BOOST_DATA_TEST_CASE(align_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_10 = base_dir + "/align.10.wasm"; +std::vector wasm_align_10= read_wasm(wasm_str_align_10.c_str()); + +BOOST_DATA_TEST_CASE(align_10_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_10); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_106 = base_dir + "/align.106.wasm"; +std::vector wasm_align_106= read_wasm(wasm_str_align_106.c_str()); + +BOOST_DATA_TEST_CASE(align_106_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_106); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_107 = base_dir + "/align.107.wasm"; +std::vector wasm_align_107= read_wasm(wasm_str_align_107.c_str()); + +BOOST_DATA_TEST_CASE(align_107_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_107); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(align_107_pass, boost::unit_test::data::xrange(1,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_107); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_11 = base_dir + "/align.11.wasm"; +std::vector wasm_align_11= read_wasm(wasm_str_align_11.c_str()); + +BOOST_DATA_TEST_CASE(align_11_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_11); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_12 = base_dir + "/align.12.wasm"; +std::vector wasm_align_12= read_wasm(wasm_str_align_12.c_str()); + +BOOST_DATA_TEST_CASE(align_12_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_12); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_13 = base_dir + "/align.13.wasm"; +std::vector wasm_align_13= read_wasm(wasm_str_align_13.c_str()); + +BOOST_DATA_TEST_CASE(align_13_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_13); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_14 = base_dir + "/align.14.wasm"; +std::vector wasm_align_14= read_wasm(wasm_str_align_14.c_str()); + +BOOST_DATA_TEST_CASE(align_14_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_14); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_15 = base_dir + "/align.15.wasm"; +std::vector wasm_align_15= read_wasm(wasm_str_align_15.c_str()); + +BOOST_DATA_TEST_CASE(align_15_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_15); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_16 = base_dir + "/align.16.wasm"; +std::vector wasm_align_16= read_wasm(wasm_str_align_16.c_str()); + +BOOST_DATA_TEST_CASE(align_16_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_16); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_17 = base_dir + "/align.17.wasm"; +std::vector wasm_align_17= read_wasm(wasm_str_align_17.c_str()); + +BOOST_DATA_TEST_CASE(align_17_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_17); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_18 = base_dir + "/align.18.wasm"; +std::vector wasm_align_18= read_wasm(wasm_str_align_18.c_str()); + +BOOST_DATA_TEST_CASE(align_18_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_18); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_19 = base_dir + "/align.19.wasm"; +std::vector wasm_align_19= read_wasm(wasm_str_align_19.c_str()); + +BOOST_DATA_TEST_CASE(align_19_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_19); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_2 = base_dir + "/align.2.wasm"; +std::vector wasm_align_2= read_wasm(wasm_str_align_2.c_str()); + +BOOST_DATA_TEST_CASE(align_2_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_20 = base_dir + "/align.20.wasm"; +std::vector wasm_align_20= read_wasm(wasm_str_align_20.c_str()); + +BOOST_DATA_TEST_CASE(align_20_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_20); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_21 = base_dir + "/align.21.wasm"; +std::vector wasm_align_21= read_wasm(wasm_str_align_21.c_str()); + +BOOST_DATA_TEST_CASE(align_21_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_21); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_22 = base_dir + "/align.22.wasm"; +std::vector wasm_align_22= read_wasm(wasm_str_align_22.c_str()); + +BOOST_DATA_TEST_CASE(align_22_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_22); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_3 = base_dir + "/align.3.wasm"; +std::vector wasm_align_3= read_wasm(wasm_str_align_3.c_str()); + +BOOST_DATA_TEST_CASE(align_3_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_4 = base_dir + "/align.4.wasm"; +std::vector wasm_align_4= read_wasm(wasm_str_align_4.c_str()); + +BOOST_DATA_TEST_CASE(align_4_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_5 = base_dir + "/align.5.wasm"; +std::vector wasm_align_5= read_wasm(wasm_str_align_5.c_str()); + +BOOST_DATA_TEST_CASE(align_5_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_6 = base_dir + "/align.6.wasm"; +std::vector wasm_align_6= read_wasm(wasm_str_align_6.c_str()); + +BOOST_DATA_TEST_CASE(align_6_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_6); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_7 = base_dir + "/align.7.wasm"; +std::vector wasm_align_7= read_wasm(wasm_str_align_7.c_str()); + +BOOST_DATA_TEST_CASE(align_7_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_7); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_8 = base_dir + "/align.8.wasm"; +std::vector wasm_align_8= read_wasm(wasm_str_align_8.c_str()); + +BOOST_DATA_TEST_CASE(align_8_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_align_9 = base_dir + "/align.9.wasm"; +std::vector wasm_align_9= read_wasm(wasm_str_align_9.c_str()); + +BOOST_DATA_TEST_CASE(align_9_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_align_9); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/binary-leb128.cpp b/wasm-spec-tests/generated-tests/binary-leb128.cpp new file mode 100644 index 0000000000..9f6711b5ac --- /dev/null +++ b/wasm-spec-tests/generated-tests/binary-leb128.cpp @@ -0,0 +1,526 @@ +#include + +const string wasm_str_binary_leb128_0 = base_dir + "/binary-leb128.0.wasm"; +std::vector wasm_binary_leb128_0= read_wasm(wasm_str_binary_leb128_0.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_1 = base_dir + "/binary-leb128.1.wasm"; +std::vector wasm_binary_leb128_1= read_wasm(wasm_str_binary_leb128_1.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_10 = base_dir + "/binary-leb128.10.wasm"; +std::vector wasm_binary_leb128_10= read_wasm(wasm_str_binary_leb128_10.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_10_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_10); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_11 = base_dir + "/binary-leb128.11.wasm"; +std::vector wasm_binary_leb128_11= read_wasm(wasm_str_binary_leb128_11.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_11_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_11); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_12 = base_dir + "/binary-leb128.12.wasm"; +std::vector wasm_binary_leb128_12= read_wasm(wasm_str_binary_leb128_12.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_12_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_12); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_13 = base_dir + "/binary-leb128.13.wasm"; +std::vector wasm_binary_leb128_13= read_wasm(wasm_str_binary_leb128_13.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_13_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_13); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_14 = base_dir + "/binary-leb128.14.wasm"; +std::vector wasm_binary_leb128_14= read_wasm(wasm_str_binary_leb128_14.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_14_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_14); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_15 = base_dir + "/binary-leb128.15.wasm"; +std::vector wasm_binary_leb128_15= read_wasm(wasm_str_binary_leb128_15.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_15_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_15); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_16 = base_dir + "/binary-leb128.16.wasm"; +std::vector wasm_binary_leb128_16= read_wasm(wasm_str_binary_leb128_16.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_16_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_16); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_17 = base_dir + "/binary-leb128.17.wasm"; +std::vector wasm_binary_leb128_17= read_wasm(wasm_str_binary_leb128_17.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_17_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_17); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_18 = base_dir + "/binary-leb128.18.wasm"; +std::vector wasm_binary_leb128_18= read_wasm(wasm_str_binary_leb128_18.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_18_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_18); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_19 = base_dir + "/binary-leb128.19.wasm"; +std::vector wasm_binary_leb128_19= read_wasm(wasm_str_binary_leb128_19.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_19_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_19); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_2 = base_dir + "/binary-leb128.2.wasm"; +std::vector wasm_binary_leb128_2= read_wasm(wasm_str_binary_leb128_2.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_2_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_20 = base_dir + "/binary-leb128.20.wasm"; +std::vector wasm_binary_leb128_20= read_wasm(wasm_str_binary_leb128_20.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_20_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_20); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_21 = base_dir + "/binary-leb128.21.wasm"; +std::vector wasm_binary_leb128_21= read_wasm(wasm_str_binary_leb128_21.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_21_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_21); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_22 = base_dir + "/binary-leb128.22.wasm"; +std::vector wasm_binary_leb128_22= read_wasm(wasm_str_binary_leb128_22.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_22_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_22); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_23 = base_dir + "/binary-leb128.23.wasm"; +std::vector wasm_binary_leb128_23= read_wasm(wasm_str_binary_leb128_23.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_23_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_23); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_24 = base_dir + "/binary-leb128.24.wasm"; +std::vector wasm_binary_leb128_24= read_wasm(wasm_str_binary_leb128_24.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_24_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_24); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_3 = base_dir + "/binary-leb128.3.wasm"; +std::vector wasm_binary_leb128_3= read_wasm(wasm_str_binary_leb128_3.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_3_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_4 = base_dir + "/binary-leb128.4.wasm"; +std::vector wasm_binary_leb128_4= read_wasm(wasm_str_binary_leb128_4.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_4_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_5 = base_dir + "/binary-leb128.5.wasm"; +std::vector wasm_binary_leb128_5= read_wasm(wasm_str_binary_leb128_5.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_5_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_6 = base_dir + "/binary-leb128.6.wasm"; +std::vector wasm_binary_leb128_6= read_wasm(wasm_str_binary_leb128_6.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_6_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_6); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_7 = base_dir + "/binary-leb128.7.wasm"; +std::vector wasm_binary_leb128_7= read_wasm(wasm_str_binary_leb128_7.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_7_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_7); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_8 = base_dir + "/binary-leb128.8.wasm"; +std::vector wasm_binary_leb128_8= read_wasm(wasm_str_binary_leb128_8.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_8_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_leb128_9 = base_dir + "/binary-leb128.9.wasm"; +std::vector wasm_binary_leb128_9= read_wasm(wasm_str_binary_leb128_9.c_str()); + +BOOST_DATA_TEST_CASE(binary_leb128_9_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_leb128_9); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/binary.cpp b/wasm-spec-tests/generated-tests/binary.cpp new file mode 100644 index 0000000000..d5e57e453e --- /dev/null +++ b/wasm-spec-tests/generated-tests/binary.cpp @@ -0,0 +1,148 @@ +#include + +const string wasm_str_binary_0 = base_dir + "/binary.0.wasm"; +std::vector wasm_binary_0= read_wasm(wasm_str_binary_0.c_str()); + +BOOST_DATA_TEST_CASE(binary_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_1 = base_dir + "/binary.1.wasm"; +std::vector wasm_binary_1= read_wasm(wasm_str_binary_1.c_str()); + +BOOST_DATA_TEST_CASE(binary_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_2 = base_dir + "/binary.2.wasm"; +std::vector wasm_binary_2= read_wasm(wasm_str_binary_2.c_str()); + +BOOST_DATA_TEST_CASE(binary_2_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_3 = base_dir + "/binary.3.wasm"; +std::vector wasm_binary_3= read_wasm(wasm_str_binary_3.c_str()); + +BOOST_DATA_TEST_CASE(binary_3_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_48 = base_dir + "/binary.48.wasm"; +std::vector wasm_binary_48= read_wasm(wasm_str_binary_48.c_str()); + +BOOST_DATA_TEST_CASE(binary_48_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_48); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_53 = base_dir + "/binary.53.wasm"; +std::vector wasm_binary_53= read_wasm(wasm_str_binary_53.c_str()); + +BOOST_DATA_TEST_CASE(binary_53_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_53); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_binary_54 = base_dir + "/binary.54.wasm"; +std::vector wasm_binary_54= read_wasm(wasm_str_binary_54.c_str()); + +BOOST_DATA_TEST_CASE(binary_54_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_binary_54); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/block.cpp b/wasm-spec-tests/generated-tests/block.cpp new file mode 100644 index 0000000000..04e1e94c19 --- /dev/null +++ b/wasm-spec-tests/generated-tests/block.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_block_0 = base_dir + "/block.0.wasm"; +std::vector wasm_block_0= read_wasm(wasm_str_block_0.c_str()); + +BOOST_DATA_TEST_CASE(block_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_block_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/br.cpp b/wasm-spec-tests/generated-tests/br.cpp new file mode 100644 index 0000000000..1149df9fbf --- /dev/null +++ b/wasm-spec-tests/generated-tests/br.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_br_0 = base_dir + "/br.0.wasm"; +std::vector wasm_br_0= read_wasm(wasm_str_br_0.c_str()); + +BOOST_DATA_TEST_CASE(br_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_br_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/br_if.cpp b/wasm-spec-tests/generated-tests/br_if.cpp new file mode 100644 index 0000000000..60ab239d50 --- /dev/null +++ b/wasm-spec-tests/generated-tests/br_if.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_br_if_0 = base_dir + "/br_if.0.wasm"; +std::vector wasm_br_if_0= read_wasm(wasm_str_br_if_0.c_str()); + +BOOST_DATA_TEST_CASE(br_if_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_br_if_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/br_table.cpp b/wasm-spec-tests/generated-tests/br_table.cpp new file mode 100644 index 0000000000..3d33f4391a --- /dev/null +++ b/wasm-spec-tests/generated-tests/br_table.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_br_table_0 = base_dir + "/br_table.0.wasm"; +std::vector wasm_br_table_0= read_wasm(wasm_str_br_table_0.c_str()); + +BOOST_DATA_TEST_CASE(br_table_0_pass, boost::unit_test::data::xrange(0,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_br_table_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/break-drop.cpp b/wasm-spec-tests/generated-tests/break-drop.cpp new file mode 100644 index 0000000000..a68761bed4 --- /dev/null +++ b/wasm-spec-tests/generated-tests/break-drop.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_break_drop_0 = base_dir + "/break-drop.0.wasm"; +std::vector wasm_break_drop_0= read_wasm(wasm_str_break_drop_0.c_str()); + +BOOST_DATA_TEST_CASE(break_drop_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_break_drop_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/call.cpp b/wasm-spec-tests/generated-tests/call.cpp new file mode 100644 index 0000000000..2137b694e1 --- /dev/null +++ b/wasm-spec-tests/generated-tests/call.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_call_0 = base_dir + "/call.0.wasm"; +std::vector wasm_call_0= read_wasm(wasm_str_call_0.c_str()); + +BOOST_DATA_TEST_CASE(call_0_check_throw, boost::unit_test::data::xrange(0,3), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_call_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(call_0_pass, boost::unit_test::data::xrange(3,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_call_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/call_indirect.cpp b/wasm-spec-tests/generated-tests/call_indirect.cpp new file mode 100644 index 0000000000..69d8572a7f --- /dev/null +++ b/wasm-spec-tests/generated-tests/call_indirect.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_call_indirect_0 = base_dir + "/call_indirect.0.wasm"; +std::vector wasm_call_indirect_0= read_wasm(wasm_str_call_indirect_0.c_str()); + +BOOST_DATA_TEST_CASE(call_indirect_0_check_throw, boost::unit_test::data::xrange(0,15), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_call_indirect_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(call_indirect_0_pass, boost::unit_test::data::xrange(15,17), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_call_indirect_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/const.cpp b/wasm-spec-tests/generated-tests/const.cpp new file mode 100644 index 0000000000..61c5fca447 --- /dev/null +++ b/wasm-spec-tests/generated-tests/const.cpp @@ -0,0 +1,7099 @@ +#include + +const string wasm_str_const_0 = base_dir + "/const.0.wasm"; +std::vector wasm_const_0= read_wasm(wasm_str_const_0.c_str()); + +BOOST_DATA_TEST_CASE(const_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_1 = base_dir + "/const.1.wasm"; +std::vector wasm_const_1= read_wasm(wasm_str_const_1.c_str()); + +BOOST_DATA_TEST_CASE(const_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_100 = base_dir + "/const.100.wasm"; +std::vector wasm_const_100= read_wasm(wasm_str_const_100.c_str()); + +BOOST_DATA_TEST_CASE(const_100_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_100); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_101 = base_dir + "/const.101.wasm"; +std::vector wasm_const_101= read_wasm(wasm_str_const_101.c_str()); + +BOOST_DATA_TEST_CASE(const_101_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_101); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_102 = base_dir + "/const.102.wasm"; +std::vector wasm_const_102= read_wasm(wasm_str_const_102.c_str()); + +BOOST_DATA_TEST_CASE(const_102_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_102); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_103 = base_dir + "/const.103.wasm"; +std::vector wasm_const_103= read_wasm(wasm_str_const_103.c_str()); + +BOOST_DATA_TEST_CASE(const_103_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_103); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_104 = base_dir + "/const.104.wasm"; +std::vector wasm_const_104= read_wasm(wasm_str_const_104.c_str()); + +BOOST_DATA_TEST_CASE(const_104_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_104); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_105 = base_dir + "/const.105.wasm"; +std::vector wasm_const_105= read_wasm(wasm_str_const_105.c_str()); + +BOOST_DATA_TEST_CASE(const_105_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_105); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_106 = base_dir + "/const.106.wasm"; +std::vector wasm_const_106= read_wasm(wasm_str_const_106.c_str()); + +BOOST_DATA_TEST_CASE(const_106_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_106); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_107 = base_dir + "/const.107.wasm"; +std::vector wasm_const_107= read_wasm(wasm_str_const_107.c_str()); + +BOOST_DATA_TEST_CASE(const_107_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_107); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_108 = base_dir + "/const.108.wasm"; +std::vector wasm_const_108= read_wasm(wasm_str_const_108.c_str()); + +BOOST_DATA_TEST_CASE(const_108_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_108); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_109 = base_dir + "/const.109.wasm"; +std::vector wasm_const_109= read_wasm(wasm_str_const_109.c_str()); + +BOOST_DATA_TEST_CASE(const_109_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_109); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_110 = base_dir + "/const.110.wasm"; +std::vector wasm_const_110= read_wasm(wasm_str_const_110.c_str()); + +BOOST_DATA_TEST_CASE(const_110_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_110); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_111 = base_dir + "/const.111.wasm"; +std::vector wasm_const_111= read_wasm(wasm_str_const_111.c_str()); + +BOOST_DATA_TEST_CASE(const_111_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_111); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_112 = base_dir + "/const.112.wasm"; +std::vector wasm_const_112= read_wasm(wasm_str_const_112.c_str()); + +BOOST_DATA_TEST_CASE(const_112_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_112); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_113 = base_dir + "/const.113.wasm"; +std::vector wasm_const_113= read_wasm(wasm_str_const_113.c_str()); + +BOOST_DATA_TEST_CASE(const_113_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_113); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_114 = base_dir + "/const.114.wasm"; +std::vector wasm_const_114= read_wasm(wasm_str_const_114.c_str()); + +BOOST_DATA_TEST_CASE(const_114_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_114); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_115 = base_dir + "/const.115.wasm"; +std::vector wasm_const_115= read_wasm(wasm_str_const_115.c_str()); + +BOOST_DATA_TEST_CASE(const_115_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_115); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_116 = base_dir + "/const.116.wasm"; +std::vector wasm_const_116= read_wasm(wasm_str_const_116.c_str()); + +BOOST_DATA_TEST_CASE(const_116_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_116); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_117 = base_dir + "/const.117.wasm"; +std::vector wasm_const_117= read_wasm(wasm_str_const_117.c_str()); + +BOOST_DATA_TEST_CASE(const_117_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_117); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_118 = base_dir + "/const.118.wasm"; +std::vector wasm_const_118= read_wasm(wasm_str_const_118.c_str()); + +BOOST_DATA_TEST_CASE(const_118_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_118); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_119 = base_dir + "/const.119.wasm"; +std::vector wasm_const_119= read_wasm(wasm_str_const_119.c_str()); + +BOOST_DATA_TEST_CASE(const_119_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_119); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_12 = base_dir + "/const.12.wasm"; +std::vector wasm_const_12= read_wasm(wasm_str_const_12.c_str()); + +BOOST_DATA_TEST_CASE(const_12_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_12); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_120 = base_dir + "/const.120.wasm"; +std::vector wasm_const_120= read_wasm(wasm_str_const_120.c_str()); + +BOOST_DATA_TEST_CASE(const_120_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_120); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_121 = base_dir + "/const.121.wasm"; +std::vector wasm_const_121= read_wasm(wasm_str_const_121.c_str()); + +BOOST_DATA_TEST_CASE(const_121_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_121); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_122 = base_dir + "/const.122.wasm"; +std::vector wasm_const_122= read_wasm(wasm_str_const_122.c_str()); + +BOOST_DATA_TEST_CASE(const_122_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_122); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_123 = base_dir + "/const.123.wasm"; +std::vector wasm_const_123= read_wasm(wasm_str_const_123.c_str()); + +BOOST_DATA_TEST_CASE(const_123_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_123); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_124 = base_dir + "/const.124.wasm"; +std::vector wasm_const_124= read_wasm(wasm_str_const_124.c_str()); + +BOOST_DATA_TEST_CASE(const_124_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_124); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_125 = base_dir + "/const.125.wasm"; +std::vector wasm_const_125= read_wasm(wasm_str_const_125.c_str()); + +BOOST_DATA_TEST_CASE(const_125_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_125); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_126 = base_dir + "/const.126.wasm"; +std::vector wasm_const_126= read_wasm(wasm_str_const_126.c_str()); + +BOOST_DATA_TEST_CASE(const_126_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_126); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_127 = base_dir + "/const.127.wasm"; +std::vector wasm_const_127= read_wasm(wasm_str_const_127.c_str()); + +BOOST_DATA_TEST_CASE(const_127_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_127); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_128 = base_dir + "/const.128.wasm"; +std::vector wasm_const_128= read_wasm(wasm_str_const_128.c_str()); + +BOOST_DATA_TEST_CASE(const_128_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_128); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_129 = base_dir + "/const.129.wasm"; +std::vector wasm_const_129= read_wasm(wasm_str_const_129.c_str()); + +BOOST_DATA_TEST_CASE(const_129_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_129); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_13 = base_dir + "/const.13.wasm"; +std::vector wasm_const_13= read_wasm(wasm_str_const_13.c_str()); + +BOOST_DATA_TEST_CASE(const_13_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_13); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_130 = base_dir + "/const.130.wasm"; +std::vector wasm_const_130= read_wasm(wasm_str_const_130.c_str()); + +BOOST_DATA_TEST_CASE(const_130_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_130); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_131 = base_dir + "/const.131.wasm"; +std::vector wasm_const_131= read_wasm(wasm_str_const_131.c_str()); + +BOOST_DATA_TEST_CASE(const_131_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_131); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_132 = base_dir + "/const.132.wasm"; +std::vector wasm_const_132= read_wasm(wasm_str_const_132.c_str()); + +BOOST_DATA_TEST_CASE(const_132_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_132); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_133 = base_dir + "/const.133.wasm"; +std::vector wasm_const_133= read_wasm(wasm_str_const_133.c_str()); + +BOOST_DATA_TEST_CASE(const_133_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_133); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_134 = base_dir + "/const.134.wasm"; +std::vector wasm_const_134= read_wasm(wasm_str_const_134.c_str()); + +BOOST_DATA_TEST_CASE(const_134_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_134); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_135 = base_dir + "/const.135.wasm"; +std::vector wasm_const_135= read_wasm(wasm_str_const_135.c_str()); + +BOOST_DATA_TEST_CASE(const_135_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_135); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_136 = base_dir + "/const.136.wasm"; +std::vector wasm_const_136= read_wasm(wasm_str_const_136.c_str()); + +BOOST_DATA_TEST_CASE(const_136_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_136); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_137 = base_dir + "/const.137.wasm"; +std::vector wasm_const_137= read_wasm(wasm_str_const_137.c_str()); + +BOOST_DATA_TEST_CASE(const_137_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_137); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_138 = base_dir + "/const.138.wasm"; +std::vector wasm_const_138= read_wasm(wasm_str_const_138.c_str()); + +BOOST_DATA_TEST_CASE(const_138_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_138); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_139 = base_dir + "/const.139.wasm"; +std::vector wasm_const_139= read_wasm(wasm_str_const_139.c_str()); + +BOOST_DATA_TEST_CASE(const_139_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_139); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_140 = base_dir + "/const.140.wasm"; +std::vector wasm_const_140= read_wasm(wasm_str_const_140.c_str()); + +BOOST_DATA_TEST_CASE(const_140_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_140); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_141 = base_dir + "/const.141.wasm"; +std::vector wasm_const_141= read_wasm(wasm_str_const_141.c_str()); + +BOOST_DATA_TEST_CASE(const_141_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_141); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_142 = base_dir + "/const.142.wasm"; +std::vector wasm_const_142= read_wasm(wasm_str_const_142.c_str()); + +BOOST_DATA_TEST_CASE(const_142_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_142); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_143 = base_dir + "/const.143.wasm"; +std::vector wasm_const_143= read_wasm(wasm_str_const_143.c_str()); + +BOOST_DATA_TEST_CASE(const_143_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_143); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_144 = base_dir + "/const.144.wasm"; +std::vector wasm_const_144= read_wasm(wasm_str_const_144.c_str()); + +BOOST_DATA_TEST_CASE(const_144_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_144); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_145 = base_dir + "/const.145.wasm"; +std::vector wasm_const_145= read_wasm(wasm_str_const_145.c_str()); + +BOOST_DATA_TEST_CASE(const_145_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_145); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_146 = base_dir + "/const.146.wasm"; +std::vector wasm_const_146= read_wasm(wasm_str_const_146.c_str()); + +BOOST_DATA_TEST_CASE(const_146_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_146); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_147 = base_dir + "/const.147.wasm"; +std::vector wasm_const_147= read_wasm(wasm_str_const_147.c_str()); + +BOOST_DATA_TEST_CASE(const_147_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_147); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_148 = base_dir + "/const.148.wasm"; +std::vector wasm_const_148= read_wasm(wasm_str_const_148.c_str()); + +BOOST_DATA_TEST_CASE(const_148_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_148); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_149 = base_dir + "/const.149.wasm"; +std::vector wasm_const_149= read_wasm(wasm_str_const_149.c_str()); + +BOOST_DATA_TEST_CASE(const_149_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_149); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_150 = base_dir + "/const.150.wasm"; +std::vector wasm_const_150= read_wasm(wasm_str_const_150.c_str()); + +BOOST_DATA_TEST_CASE(const_150_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_150); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_151 = base_dir + "/const.151.wasm"; +std::vector wasm_const_151= read_wasm(wasm_str_const_151.c_str()); + +BOOST_DATA_TEST_CASE(const_151_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_151); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_152 = base_dir + "/const.152.wasm"; +std::vector wasm_const_152= read_wasm(wasm_str_const_152.c_str()); + +BOOST_DATA_TEST_CASE(const_152_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_152); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_153 = base_dir + "/const.153.wasm"; +std::vector wasm_const_153= read_wasm(wasm_str_const_153.c_str()); + +BOOST_DATA_TEST_CASE(const_153_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_153); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_154 = base_dir + "/const.154.wasm"; +std::vector wasm_const_154= read_wasm(wasm_str_const_154.c_str()); + +BOOST_DATA_TEST_CASE(const_154_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_154); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_155 = base_dir + "/const.155.wasm"; +std::vector wasm_const_155= read_wasm(wasm_str_const_155.c_str()); + +BOOST_DATA_TEST_CASE(const_155_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_155); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_156 = base_dir + "/const.156.wasm"; +std::vector wasm_const_156= read_wasm(wasm_str_const_156.c_str()); + +BOOST_DATA_TEST_CASE(const_156_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_156); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_157 = base_dir + "/const.157.wasm"; +std::vector wasm_const_157= read_wasm(wasm_str_const_157.c_str()); + +BOOST_DATA_TEST_CASE(const_157_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_157); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_158 = base_dir + "/const.158.wasm"; +std::vector wasm_const_158= read_wasm(wasm_str_const_158.c_str()); + +BOOST_DATA_TEST_CASE(const_158_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_158); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_159 = base_dir + "/const.159.wasm"; +std::vector wasm_const_159= read_wasm(wasm_str_const_159.c_str()); + +BOOST_DATA_TEST_CASE(const_159_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_159); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_16 = base_dir + "/const.16.wasm"; +std::vector wasm_const_16= read_wasm(wasm_str_const_16.c_str()); + +BOOST_DATA_TEST_CASE(const_16_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_16); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_160 = base_dir + "/const.160.wasm"; +std::vector wasm_const_160= read_wasm(wasm_str_const_160.c_str()); + +BOOST_DATA_TEST_CASE(const_160_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_160); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_161 = base_dir + "/const.161.wasm"; +std::vector wasm_const_161= read_wasm(wasm_str_const_161.c_str()); + +BOOST_DATA_TEST_CASE(const_161_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_161); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_162 = base_dir + "/const.162.wasm"; +std::vector wasm_const_162= read_wasm(wasm_str_const_162.c_str()); + +BOOST_DATA_TEST_CASE(const_162_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_162); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_163 = base_dir + "/const.163.wasm"; +std::vector wasm_const_163= read_wasm(wasm_str_const_163.c_str()); + +BOOST_DATA_TEST_CASE(const_163_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_163); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_164 = base_dir + "/const.164.wasm"; +std::vector wasm_const_164= read_wasm(wasm_str_const_164.c_str()); + +BOOST_DATA_TEST_CASE(const_164_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_164); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_165 = base_dir + "/const.165.wasm"; +std::vector wasm_const_165= read_wasm(wasm_str_const_165.c_str()); + +BOOST_DATA_TEST_CASE(const_165_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_165); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_166 = base_dir + "/const.166.wasm"; +std::vector wasm_const_166= read_wasm(wasm_str_const_166.c_str()); + +BOOST_DATA_TEST_CASE(const_166_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_166); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_167 = base_dir + "/const.167.wasm"; +std::vector wasm_const_167= read_wasm(wasm_str_const_167.c_str()); + +BOOST_DATA_TEST_CASE(const_167_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_167); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_168 = base_dir + "/const.168.wasm"; +std::vector wasm_const_168= read_wasm(wasm_str_const_168.c_str()); + +BOOST_DATA_TEST_CASE(const_168_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_168); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_169 = base_dir + "/const.169.wasm"; +std::vector wasm_const_169= read_wasm(wasm_str_const_169.c_str()); + +BOOST_DATA_TEST_CASE(const_169_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_169); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_17 = base_dir + "/const.17.wasm"; +std::vector wasm_const_17= read_wasm(wasm_str_const_17.c_str()); + +BOOST_DATA_TEST_CASE(const_17_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_17); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_170 = base_dir + "/const.170.wasm"; +std::vector wasm_const_170= read_wasm(wasm_str_const_170.c_str()); + +BOOST_DATA_TEST_CASE(const_170_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_170); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_171 = base_dir + "/const.171.wasm"; +std::vector wasm_const_171= read_wasm(wasm_str_const_171.c_str()); + +BOOST_DATA_TEST_CASE(const_171_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_171); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_172 = base_dir + "/const.172.wasm"; +std::vector wasm_const_172= read_wasm(wasm_str_const_172.c_str()); + +BOOST_DATA_TEST_CASE(const_172_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_172); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_173 = base_dir + "/const.173.wasm"; +std::vector wasm_const_173= read_wasm(wasm_str_const_173.c_str()); + +BOOST_DATA_TEST_CASE(const_173_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_173); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_174 = base_dir + "/const.174.wasm"; +std::vector wasm_const_174= read_wasm(wasm_str_const_174.c_str()); + +BOOST_DATA_TEST_CASE(const_174_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_174); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_175 = base_dir + "/const.175.wasm"; +std::vector wasm_const_175= read_wasm(wasm_str_const_175.c_str()); + +BOOST_DATA_TEST_CASE(const_175_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_175); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_176 = base_dir + "/const.176.wasm"; +std::vector wasm_const_176= read_wasm(wasm_str_const_176.c_str()); + +BOOST_DATA_TEST_CASE(const_176_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_176); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_177 = base_dir + "/const.177.wasm"; +std::vector wasm_const_177= read_wasm(wasm_str_const_177.c_str()); + +BOOST_DATA_TEST_CASE(const_177_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_177); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_178 = base_dir + "/const.178.wasm"; +std::vector wasm_const_178= read_wasm(wasm_str_const_178.c_str()); + +BOOST_DATA_TEST_CASE(const_178_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_178); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_179 = base_dir + "/const.179.wasm"; +std::vector wasm_const_179= read_wasm(wasm_str_const_179.c_str()); + +BOOST_DATA_TEST_CASE(const_179_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_179); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_18 = base_dir + "/const.18.wasm"; +std::vector wasm_const_18= read_wasm(wasm_str_const_18.c_str()); + +BOOST_DATA_TEST_CASE(const_18_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_18); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_180 = base_dir + "/const.180.wasm"; +std::vector wasm_const_180= read_wasm(wasm_str_const_180.c_str()); + +BOOST_DATA_TEST_CASE(const_180_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_180); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_181 = base_dir + "/const.181.wasm"; +std::vector wasm_const_181= read_wasm(wasm_str_const_181.c_str()); + +BOOST_DATA_TEST_CASE(const_181_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_181); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_182 = base_dir + "/const.182.wasm"; +std::vector wasm_const_182= read_wasm(wasm_str_const_182.c_str()); + +BOOST_DATA_TEST_CASE(const_182_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_182); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_183 = base_dir + "/const.183.wasm"; +std::vector wasm_const_183= read_wasm(wasm_str_const_183.c_str()); + +BOOST_DATA_TEST_CASE(const_183_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_183); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_184 = base_dir + "/const.184.wasm"; +std::vector wasm_const_184= read_wasm(wasm_str_const_184.c_str()); + +BOOST_DATA_TEST_CASE(const_184_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_184); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_185 = base_dir + "/const.185.wasm"; +std::vector wasm_const_185= read_wasm(wasm_str_const_185.c_str()); + +BOOST_DATA_TEST_CASE(const_185_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_185); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_186 = base_dir + "/const.186.wasm"; +std::vector wasm_const_186= read_wasm(wasm_str_const_186.c_str()); + +BOOST_DATA_TEST_CASE(const_186_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_186); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_187 = base_dir + "/const.187.wasm"; +std::vector wasm_const_187= read_wasm(wasm_str_const_187.c_str()); + +BOOST_DATA_TEST_CASE(const_187_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_187); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_188 = base_dir + "/const.188.wasm"; +std::vector wasm_const_188= read_wasm(wasm_str_const_188.c_str()); + +BOOST_DATA_TEST_CASE(const_188_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_188); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_189 = base_dir + "/const.189.wasm"; +std::vector wasm_const_189= read_wasm(wasm_str_const_189.c_str()); + +BOOST_DATA_TEST_CASE(const_189_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_189); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_19 = base_dir + "/const.19.wasm"; +std::vector wasm_const_19= read_wasm(wasm_str_const_19.c_str()); + +BOOST_DATA_TEST_CASE(const_19_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_19); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_190 = base_dir + "/const.190.wasm"; +std::vector wasm_const_190= read_wasm(wasm_str_const_190.c_str()); + +BOOST_DATA_TEST_CASE(const_190_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_190); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_191 = base_dir + "/const.191.wasm"; +std::vector wasm_const_191= read_wasm(wasm_str_const_191.c_str()); + +BOOST_DATA_TEST_CASE(const_191_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_191); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_192 = base_dir + "/const.192.wasm"; +std::vector wasm_const_192= read_wasm(wasm_str_const_192.c_str()); + +BOOST_DATA_TEST_CASE(const_192_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_192); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_193 = base_dir + "/const.193.wasm"; +std::vector wasm_const_193= read_wasm(wasm_str_const_193.c_str()); + +BOOST_DATA_TEST_CASE(const_193_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_193); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_194 = base_dir + "/const.194.wasm"; +std::vector wasm_const_194= read_wasm(wasm_str_const_194.c_str()); + +BOOST_DATA_TEST_CASE(const_194_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_194); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_195 = base_dir + "/const.195.wasm"; +std::vector wasm_const_195= read_wasm(wasm_str_const_195.c_str()); + +BOOST_DATA_TEST_CASE(const_195_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_195); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_196 = base_dir + "/const.196.wasm"; +std::vector wasm_const_196= read_wasm(wasm_str_const_196.c_str()); + +BOOST_DATA_TEST_CASE(const_196_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_196); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_197 = base_dir + "/const.197.wasm"; +std::vector wasm_const_197= read_wasm(wasm_str_const_197.c_str()); + +BOOST_DATA_TEST_CASE(const_197_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_197); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_198 = base_dir + "/const.198.wasm"; +std::vector wasm_const_198= read_wasm(wasm_str_const_198.c_str()); + +BOOST_DATA_TEST_CASE(const_198_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_198); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_199 = base_dir + "/const.199.wasm"; +std::vector wasm_const_199= read_wasm(wasm_str_const_199.c_str()); + +BOOST_DATA_TEST_CASE(const_199_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_199); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_20 = base_dir + "/const.20.wasm"; +std::vector wasm_const_20= read_wasm(wasm_str_const_20.c_str()); + +BOOST_DATA_TEST_CASE(const_20_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_20); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_200 = base_dir + "/const.200.wasm"; +std::vector wasm_const_200= read_wasm(wasm_str_const_200.c_str()); + +BOOST_DATA_TEST_CASE(const_200_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_200); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_201 = base_dir + "/const.201.wasm"; +std::vector wasm_const_201= read_wasm(wasm_str_const_201.c_str()); + +BOOST_DATA_TEST_CASE(const_201_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_201); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_202 = base_dir + "/const.202.wasm"; +std::vector wasm_const_202= read_wasm(wasm_str_const_202.c_str()); + +BOOST_DATA_TEST_CASE(const_202_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_202); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_203 = base_dir + "/const.203.wasm"; +std::vector wasm_const_203= read_wasm(wasm_str_const_203.c_str()); + +BOOST_DATA_TEST_CASE(const_203_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_203); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_204 = base_dir + "/const.204.wasm"; +std::vector wasm_const_204= read_wasm(wasm_str_const_204.c_str()); + +BOOST_DATA_TEST_CASE(const_204_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_204); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_205 = base_dir + "/const.205.wasm"; +std::vector wasm_const_205= read_wasm(wasm_str_const_205.c_str()); + +BOOST_DATA_TEST_CASE(const_205_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_205); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_206 = base_dir + "/const.206.wasm"; +std::vector wasm_const_206= read_wasm(wasm_str_const_206.c_str()); + +BOOST_DATA_TEST_CASE(const_206_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_206); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_207 = base_dir + "/const.207.wasm"; +std::vector wasm_const_207= read_wasm(wasm_str_const_207.c_str()); + +BOOST_DATA_TEST_CASE(const_207_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_207); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_208 = base_dir + "/const.208.wasm"; +std::vector wasm_const_208= read_wasm(wasm_str_const_208.c_str()); + +BOOST_DATA_TEST_CASE(const_208_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_208); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_209 = base_dir + "/const.209.wasm"; +std::vector wasm_const_209= read_wasm(wasm_str_const_209.c_str()); + +BOOST_DATA_TEST_CASE(const_209_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_209); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_21 = base_dir + "/const.21.wasm"; +std::vector wasm_const_21= read_wasm(wasm_str_const_21.c_str()); + +BOOST_DATA_TEST_CASE(const_21_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_21); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_210 = base_dir + "/const.210.wasm"; +std::vector wasm_const_210= read_wasm(wasm_str_const_210.c_str()); + +BOOST_DATA_TEST_CASE(const_210_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_210); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_211 = base_dir + "/const.211.wasm"; +std::vector wasm_const_211= read_wasm(wasm_str_const_211.c_str()); + +BOOST_DATA_TEST_CASE(const_211_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_211); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_212 = base_dir + "/const.212.wasm"; +std::vector wasm_const_212= read_wasm(wasm_str_const_212.c_str()); + +BOOST_DATA_TEST_CASE(const_212_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_212); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_213 = base_dir + "/const.213.wasm"; +std::vector wasm_const_213= read_wasm(wasm_str_const_213.c_str()); + +BOOST_DATA_TEST_CASE(const_213_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_213); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_214 = base_dir + "/const.214.wasm"; +std::vector wasm_const_214= read_wasm(wasm_str_const_214.c_str()); + +BOOST_DATA_TEST_CASE(const_214_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_214); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_215 = base_dir + "/const.215.wasm"; +std::vector wasm_const_215= read_wasm(wasm_str_const_215.c_str()); + +BOOST_DATA_TEST_CASE(const_215_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_215); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_216 = base_dir + "/const.216.wasm"; +std::vector wasm_const_216= read_wasm(wasm_str_const_216.c_str()); + +BOOST_DATA_TEST_CASE(const_216_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_216); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_217 = base_dir + "/const.217.wasm"; +std::vector wasm_const_217= read_wasm(wasm_str_const_217.c_str()); + +BOOST_DATA_TEST_CASE(const_217_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_217); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_218 = base_dir + "/const.218.wasm"; +std::vector wasm_const_218= read_wasm(wasm_str_const_218.c_str()); + +BOOST_DATA_TEST_CASE(const_218_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_218); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_219 = base_dir + "/const.219.wasm"; +std::vector wasm_const_219= read_wasm(wasm_str_const_219.c_str()); + +BOOST_DATA_TEST_CASE(const_219_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_219); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_22 = base_dir + "/const.22.wasm"; +std::vector wasm_const_22= read_wasm(wasm_str_const_22.c_str()); + +BOOST_DATA_TEST_CASE(const_22_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_22); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_220 = base_dir + "/const.220.wasm"; +std::vector wasm_const_220= read_wasm(wasm_str_const_220.c_str()); + +BOOST_DATA_TEST_CASE(const_220_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_220); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_221 = base_dir + "/const.221.wasm"; +std::vector wasm_const_221= read_wasm(wasm_str_const_221.c_str()); + +BOOST_DATA_TEST_CASE(const_221_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_221); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_222 = base_dir + "/const.222.wasm"; +std::vector wasm_const_222= read_wasm(wasm_str_const_222.c_str()); + +BOOST_DATA_TEST_CASE(const_222_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_222); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_223 = base_dir + "/const.223.wasm"; +std::vector wasm_const_223= read_wasm(wasm_str_const_223.c_str()); + +BOOST_DATA_TEST_CASE(const_223_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_223); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_224 = base_dir + "/const.224.wasm"; +std::vector wasm_const_224= read_wasm(wasm_str_const_224.c_str()); + +BOOST_DATA_TEST_CASE(const_224_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_224); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_225 = base_dir + "/const.225.wasm"; +std::vector wasm_const_225= read_wasm(wasm_str_const_225.c_str()); + +BOOST_DATA_TEST_CASE(const_225_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_225); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_226 = base_dir + "/const.226.wasm"; +std::vector wasm_const_226= read_wasm(wasm_str_const_226.c_str()); + +BOOST_DATA_TEST_CASE(const_226_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_226); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_227 = base_dir + "/const.227.wasm"; +std::vector wasm_const_227= read_wasm(wasm_str_const_227.c_str()); + +BOOST_DATA_TEST_CASE(const_227_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_227); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_228 = base_dir + "/const.228.wasm"; +std::vector wasm_const_228= read_wasm(wasm_str_const_228.c_str()); + +BOOST_DATA_TEST_CASE(const_228_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_228); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_229 = base_dir + "/const.229.wasm"; +std::vector wasm_const_229= read_wasm(wasm_str_const_229.c_str()); + +BOOST_DATA_TEST_CASE(const_229_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_229); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_23 = base_dir + "/const.23.wasm"; +std::vector wasm_const_23= read_wasm(wasm_str_const_23.c_str()); + +BOOST_DATA_TEST_CASE(const_23_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_23); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_230 = base_dir + "/const.230.wasm"; +std::vector wasm_const_230= read_wasm(wasm_str_const_230.c_str()); + +BOOST_DATA_TEST_CASE(const_230_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_230); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_231 = base_dir + "/const.231.wasm"; +std::vector wasm_const_231= read_wasm(wasm_str_const_231.c_str()); + +BOOST_DATA_TEST_CASE(const_231_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_231); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_232 = base_dir + "/const.232.wasm"; +std::vector wasm_const_232= read_wasm(wasm_str_const_232.c_str()); + +BOOST_DATA_TEST_CASE(const_232_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_232); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_233 = base_dir + "/const.233.wasm"; +std::vector wasm_const_233= read_wasm(wasm_str_const_233.c_str()); + +BOOST_DATA_TEST_CASE(const_233_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_233); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_234 = base_dir + "/const.234.wasm"; +std::vector wasm_const_234= read_wasm(wasm_str_const_234.c_str()); + +BOOST_DATA_TEST_CASE(const_234_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_234); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_235 = base_dir + "/const.235.wasm"; +std::vector wasm_const_235= read_wasm(wasm_str_const_235.c_str()); + +BOOST_DATA_TEST_CASE(const_235_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_235); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_236 = base_dir + "/const.236.wasm"; +std::vector wasm_const_236= read_wasm(wasm_str_const_236.c_str()); + +BOOST_DATA_TEST_CASE(const_236_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_236); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_237 = base_dir + "/const.237.wasm"; +std::vector wasm_const_237= read_wasm(wasm_str_const_237.c_str()); + +BOOST_DATA_TEST_CASE(const_237_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_237); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_238 = base_dir + "/const.238.wasm"; +std::vector wasm_const_238= read_wasm(wasm_str_const_238.c_str()); + +BOOST_DATA_TEST_CASE(const_238_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_238); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_239 = base_dir + "/const.239.wasm"; +std::vector wasm_const_239= read_wasm(wasm_str_const_239.c_str()); + +BOOST_DATA_TEST_CASE(const_239_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_239); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_24 = base_dir + "/const.24.wasm"; +std::vector wasm_const_24= read_wasm(wasm_str_const_24.c_str()); + +BOOST_DATA_TEST_CASE(const_24_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_24); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_240 = base_dir + "/const.240.wasm"; +std::vector wasm_const_240= read_wasm(wasm_str_const_240.c_str()); + +BOOST_DATA_TEST_CASE(const_240_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_240); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_241 = base_dir + "/const.241.wasm"; +std::vector wasm_const_241= read_wasm(wasm_str_const_241.c_str()); + +BOOST_DATA_TEST_CASE(const_241_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_241); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_242 = base_dir + "/const.242.wasm"; +std::vector wasm_const_242= read_wasm(wasm_str_const_242.c_str()); + +BOOST_DATA_TEST_CASE(const_242_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_242); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_243 = base_dir + "/const.243.wasm"; +std::vector wasm_const_243= read_wasm(wasm_str_const_243.c_str()); + +BOOST_DATA_TEST_CASE(const_243_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_243); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_244 = base_dir + "/const.244.wasm"; +std::vector wasm_const_244= read_wasm(wasm_str_const_244.c_str()); + +BOOST_DATA_TEST_CASE(const_244_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_244); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_245 = base_dir + "/const.245.wasm"; +std::vector wasm_const_245= read_wasm(wasm_str_const_245.c_str()); + +BOOST_DATA_TEST_CASE(const_245_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_245); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_246 = base_dir + "/const.246.wasm"; +std::vector wasm_const_246= read_wasm(wasm_str_const_246.c_str()); + +BOOST_DATA_TEST_CASE(const_246_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_246); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_247 = base_dir + "/const.247.wasm"; +std::vector wasm_const_247= read_wasm(wasm_str_const_247.c_str()); + +BOOST_DATA_TEST_CASE(const_247_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_247); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_248 = base_dir + "/const.248.wasm"; +std::vector wasm_const_248= read_wasm(wasm_str_const_248.c_str()); + +BOOST_DATA_TEST_CASE(const_248_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_248); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_249 = base_dir + "/const.249.wasm"; +std::vector wasm_const_249= read_wasm(wasm_str_const_249.c_str()); + +BOOST_DATA_TEST_CASE(const_249_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_249); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_25 = base_dir + "/const.25.wasm"; +std::vector wasm_const_25= read_wasm(wasm_str_const_25.c_str()); + +BOOST_DATA_TEST_CASE(const_25_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_25); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_250 = base_dir + "/const.250.wasm"; +std::vector wasm_const_250= read_wasm(wasm_str_const_250.c_str()); + +BOOST_DATA_TEST_CASE(const_250_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_250); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_251 = base_dir + "/const.251.wasm"; +std::vector wasm_const_251= read_wasm(wasm_str_const_251.c_str()); + +BOOST_DATA_TEST_CASE(const_251_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_251); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_252 = base_dir + "/const.252.wasm"; +std::vector wasm_const_252= read_wasm(wasm_str_const_252.c_str()); + +BOOST_DATA_TEST_CASE(const_252_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_252); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_253 = base_dir + "/const.253.wasm"; +std::vector wasm_const_253= read_wasm(wasm_str_const_253.c_str()); + +BOOST_DATA_TEST_CASE(const_253_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_253); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_254 = base_dir + "/const.254.wasm"; +std::vector wasm_const_254= read_wasm(wasm_str_const_254.c_str()); + +BOOST_DATA_TEST_CASE(const_254_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_254); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_255 = base_dir + "/const.255.wasm"; +std::vector wasm_const_255= read_wasm(wasm_str_const_255.c_str()); + +BOOST_DATA_TEST_CASE(const_255_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_255); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_256 = base_dir + "/const.256.wasm"; +std::vector wasm_const_256= read_wasm(wasm_str_const_256.c_str()); + +BOOST_DATA_TEST_CASE(const_256_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_256); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_257 = base_dir + "/const.257.wasm"; +std::vector wasm_const_257= read_wasm(wasm_str_const_257.c_str()); + +BOOST_DATA_TEST_CASE(const_257_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_257); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_258 = base_dir + "/const.258.wasm"; +std::vector wasm_const_258= read_wasm(wasm_str_const_258.c_str()); + +BOOST_DATA_TEST_CASE(const_258_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_258); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_259 = base_dir + "/const.259.wasm"; +std::vector wasm_const_259= read_wasm(wasm_str_const_259.c_str()); + +BOOST_DATA_TEST_CASE(const_259_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_259); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_260 = base_dir + "/const.260.wasm"; +std::vector wasm_const_260= read_wasm(wasm_str_const_260.c_str()); + +BOOST_DATA_TEST_CASE(const_260_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_260); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_261 = base_dir + "/const.261.wasm"; +std::vector wasm_const_261= read_wasm(wasm_str_const_261.c_str()); + +BOOST_DATA_TEST_CASE(const_261_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_261); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_262 = base_dir + "/const.262.wasm"; +std::vector wasm_const_262= read_wasm(wasm_str_const_262.c_str()); + +BOOST_DATA_TEST_CASE(const_262_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_262); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_263 = base_dir + "/const.263.wasm"; +std::vector wasm_const_263= read_wasm(wasm_str_const_263.c_str()); + +BOOST_DATA_TEST_CASE(const_263_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_263); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_264 = base_dir + "/const.264.wasm"; +std::vector wasm_const_264= read_wasm(wasm_str_const_264.c_str()); + +BOOST_DATA_TEST_CASE(const_264_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_264); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_265 = base_dir + "/const.265.wasm"; +std::vector wasm_const_265= read_wasm(wasm_str_const_265.c_str()); + +BOOST_DATA_TEST_CASE(const_265_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_265); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_266 = base_dir + "/const.266.wasm"; +std::vector wasm_const_266= read_wasm(wasm_str_const_266.c_str()); + +BOOST_DATA_TEST_CASE(const_266_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_266); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_267 = base_dir + "/const.267.wasm"; +std::vector wasm_const_267= read_wasm(wasm_str_const_267.c_str()); + +BOOST_DATA_TEST_CASE(const_267_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_267); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_268 = base_dir + "/const.268.wasm"; +std::vector wasm_const_268= read_wasm(wasm_str_const_268.c_str()); + +BOOST_DATA_TEST_CASE(const_268_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_268); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_269 = base_dir + "/const.269.wasm"; +std::vector wasm_const_269= read_wasm(wasm_str_const_269.c_str()); + +BOOST_DATA_TEST_CASE(const_269_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_269); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_270 = base_dir + "/const.270.wasm"; +std::vector wasm_const_270= read_wasm(wasm_str_const_270.c_str()); + +BOOST_DATA_TEST_CASE(const_270_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_270); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_271 = base_dir + "/const.271.wasm"; +std::vector wasm_const_271= read_wasm(wasm_str_const_271.c_str()); + +BOOST_DATA_TEST_CASE(const_271_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_271); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_272 = base_dir + "/const.272.wasm"; +std::vector wasm_const_272= read_wasm(wasm_str_const_272.c_str()); + +BOOST_DATA_TEST_CASE(const_272_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_272); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_273 = base_dir + "/const.273.wasm"; +std::vector wasm_const_273= read_wasm(wasm_str_const_273.c_str()); + +BOOST_DATA_TEST_CASE(const_273_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_273); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_274 = base_dir + "/const.274.wasm"; +std::vector wasm_const_274= read_wasm(wasm_str_const_274.c_str()); + +BOOST_DATA_TEST_CASE(const_274_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_274); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_275 = base_dir + "/const.275.wasm"; +std::vector wasm_const_275= read_wasm(wasm_str_const_275.c_str()); + +BOOST_DATA_TEST_CASE(const_275_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_275); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_276 = base_dir + "/const.276.wasm"; +std::vector wasm_const_276= read_wasm(wasm_str_const_276.c_str()); + +BOOST_DATA_TEST_CASE(const_276_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_276); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_277 = base_dir + "/const.277.wasm"; +std::vector wasm_const_277= read_wasm(wasm_str_const_277.c_str()); + +BOOST_DATA_TEST_CASE(const_277_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_277); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_278 = base_dir + "/const.278.wasm"; +std::vector wasm_const_278= read_wasm(wasm_str_const_278.c_str()); + +BOOST_DATA_TEST_CASE(const_278_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_278); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_279 = base_dir + "/const.279.wasm"; +std::vector wasm_const_279= read_wasm(wasm_str_const_279.c_str()); + +BOOST_DATA_TEST_CASE(const_279_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_279); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_280 = base_dir + "/const.280.wasm"; +std::vector wasm_const_280= read_wasm(wasm_str_const_280.c_str()); + +BOOST_DATA_TEST_CASE(const_280_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_280); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_281 = base_dir + "/const.281.wasm"; +std::vector wasm_const_281= read_wasm(wasm_str_const_281.c_str()); + +BOOST_DATA_TEST_CASE(const_281_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_281); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_282 = base_dir + "/const.282.wasm"; +std::vector wasm_const_282= read_wasm(wasm_str_const_282.c_str()); + +BOOST_DATA_TEST_CASE(const_282_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_282); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_283 = base_dir + "/const.283.wasm"; +std::vector wasm_const_283= read_wasm(wasm_str_const_283.c_str()); + +BOOST_DATA_TEST_CASE(const_283_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_283); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_284 = base_dir + "/const.284.wasm"; +std::vector wasm_const_284= read_wasm(wasm_str_const_284.c_str()); + +BOOST_DATA_TEST_CASE(const_284_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_284); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_285 = base_dir + "/const.285.wasm"; +std::vector wasm_const_285= read_wasm(wasm_str_const_285.c_str()); + +BOOST_DATA_TEST_CASE(const_285_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_285); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_286 = base_dir + "/const.286.wasm"; +std::vector wasm_const_286= read_wasm(wasm_str_const_286.c_str()); + +BOOST_DATA_TEST_CASE(const_286_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_286); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_287 = base_dir + "/const.287.wasm"; +std::vector wasm_const_287= read_wasm(wasm_str_const_287.c_str()); + +BOOST_DATA_TEST_CASE(const_287_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_287); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_288 = base_dir + "/const.288.wasm"; +std::vector wasm_const_288= read_wasm(wasm_str_const_288.c_str()); + +BOOST_DATA_TEST_CASE(const_288_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_288); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_289 = base_dir + "/const.289.wasm"; +std::vector wasm_const_289= read_wasm(wasm_str_const_289.c_str()); + +BOOST_DATA_TEST_CASE(const_289_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_289); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_290 = base_dir + "/const.290.wasm"; +std::vector wasm_const_290= read_wasm(wasm_str_const_290.c_str()); + +BOOST_DATA_TEST_CASE(const_290_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_290); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_291 = base_dir + "/const.291.wasm"; +std::vector wasm_const_291= read_wasm(wasm_str_const_291.c_str()); + +BOOST_DATA_TEST_CASE(const_291_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_291); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_292 = base_dir + "/const.292.wasm"; +std::vector wasm_const_292= read_wasm(wasm_str_const_292.c_str()); + +BOOST_DATA_TEST_CASE(const_292_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_292); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_293 = base_dir + "/const.293.wasm"; +std::vector wasm_const_293= read_wasm(wasm_str_const_293.c_str()); + +BOOST_DATA_TEST_CASE(const_293_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_293); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_294 = base_dir + "/const.294.wasm"; +std::vector wasm_const_294= read_wasm(wasm_str_const_294.c_str()); + +BOOST_DATA_TEST_CASE(const_294_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_294); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_295 = base_dir + "/const.295.wasm"; +std::vector wasm_const_295= read_wasm(wasm_str_const_295.c_str()); + +BOOST_DATA_TEST_CASE(const_295_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_295); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_296 = base_dir + "/const.296.wasm"; +std::vector wasm_const_296= read_wasm(wasm_str_const_296.c_str()); + +BOOST_DATA_TEST_CASE(const_296_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_296); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_297 = base_dir + "/const.297.wasm"; +std::vector wasm_const_297= read_wasm(wasm_str_const_297.c_str()); + +BOOST_DATA_TEST_CASE(const_297_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_297); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_298 = base_dir + "/const.298.wasm"; +std::vector wasm_const_298= read_wasm(wasm_str_const_298.c_str()); + +BOOST_DATA_TEST_CASE(const_298_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_298); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_299 = base_dir + "/const.299.wasm"; +std::vector wasm_const_299= read_wasm(wasm_str_const_299.c_str()); + +BOOST_DATA_TEST_CASE(const_299_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_299); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_30 = base_dir + "/const.30.wasm"; +std::vector wasm_const_30= read_wasm(wasm_str_const_30.c_str()); + +BOOST_DATA_TEST_CASE(const_30_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_30); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_300 = base_dir + "/const.300.wasm"; +std::vector wasm_const_300= read_wasm(wasm_str_const_300.c_str()); + +BOOST_DATA_TEST_CASE(const_300_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_300); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_301 = base_dir + "/const.301.wasm"; +std::vector wasm_const_301= read_wasm(wasm_str_const_301.c_str()); + +BOOST_DATA_TEST_CASE(const_301_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_301); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_302 = base_dir + "/const.302.wasm"; +std::vector wasm_const_302= read_wasm(wasm_str_const_302.c_str()); + +BOOST_DATA_TEST_CASE(const_302_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_302); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_303 = base_dir + "/const.303.wasm"; +std::vector wasm_const_303= read_wasm(wasm_str_const_303.c_str()); + +BOOST_DATA_TEST_CASE(const_303_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_303); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_304 = base_dir + "/const.304.wasm"; +std::vector wasm_const_304= read_wasm(wasm_str_const_304.c_str()); + +BOOST_DATA_TEST_CASE(const_304_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_304); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_305 = base_dir + "/const.305.wasm"; +std::vector wasm_const_305= read_wasm(wasm_str_const_305.c_str()); + +BOOST_DATA_TEST_CASE(const_305_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_305); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_306 = base_dir + "/const.306.wasm"; +std::vector wasm_const_306= read_wasm(wasm_str_const_306.c_str()); + +BOOST_DATA_TEST_CASE(const_306_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_306); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_307 = base_dir + "/const.307.wasm"; +std::vector wasm_const_307= read_wasm(wasm_str_const_307.c_str()); + +BOOST_DATA_TEST_CASE(const_307_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_307); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_308 = base_dir + "/const.308.wasm"; +std::vector wasm_const_308= read_wasm(wasm_str_const_308.c_str()); + +BOOST_DATA_TEST_CASE(const_308_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_308); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_309 = base_dir + "/const.309.wasm"; +std::vector wasm_const_309= read_wasm(wasm_str_const_309.c_str()); + +BOOST_DATA_TEST_CASE(const_309_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_309); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_31 = base_dir + "/const.31.wasm"; +std::vector wasm_const_31= read_wasm(wasm_str_const_31.c_str()); + +BOOST_DATA_TEST_CASE(const_31_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_31); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_310 = base_dir + "/const.310.wasm"; +std::vector wasm_const_310= read_wasm(wasm_str_const_310.c_str()); + +BOOST_DATA_TEST_CASE(const_310_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_310); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_311 = base_dir + "/const.311.wasm"; +std::vector wasm_const_311= read_wasm(wasm_str_const_311.c_str()); + +BOOST_DATA_TEST_CASE(const_311_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_311); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_312 = base_dir + "/const.312.wasm"; +std::vector wasm_const_312= read_wasm(wasm_str_const_312.c_str()); + +BOOST_DATA_TEST_CASE(const_312_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_312); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_313 = base_dir + "/const.313.wasm"; +std::vector wasm_const_313= read_wasm(wasm_str_const_313.c_str()); + +BOOST_DATA_TEST_CASE(const_313_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_313); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_314 = base_dir + "/const.314.wasm"; +std::vector wasm_const_314= read_wasm(wasm_str_const_314.c_str()); + +BOOST_DATA_TEST_CASE(const_314_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_314); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_315 = base_dir + "/const.315.wasm"; +std::vector wasm_const_315= read_wasm(wasm_str_const_315.c_str()); + +BOOST_DATA_TEST_CASE(const_315_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_315); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_316 = base_dir + "/const.316.wasm"; +std::vector wasm_const_316= read_wasm(wasm_str_const_316.c_str()); + +BOOST_DATA_TEST_CASE(const_316_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_316); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_317 = base_dir + "/const.317.wasm"; +std::vector wasm_const_317= read_wasm(wasm_str_const_317.c_str()); + +BOOST_DATA_TEST_CASE(const_317_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_317); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_318 = base_dir + "/const.318.wasm"; +std::vector wasm_const_318= read_wasm(wasm_str_const_318.c_str()); + +BOOST_DATA_TEST_CASE(const_318_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_318); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_319 = base_dir + "/const.319.wasm"; +std::vector wasm_const_319= read_wasm(wasm_str_const_319.c_str()); + +BOOST_DATA_TEST_CASE(const_319_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_319); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_320 = base_dir + "/const.320.wasm"; +std::vector wasm_const_320= read_wasm(wasm_str_const_320.c_str()); + +BOOST_DATA_TEST_CASE(const_320_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_320); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_321 = base_dir + "/const.321.wasm"; +std::vector wasm_const_321= read_wasm(wasm_str_const_321.c_str()); + +BOOST_DATA_TEST_CASE(const_321_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_321); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_322 = base_dir + "/const.322.wasm"; +std::vector wasm_const_322= read_wasm(wasm_str_const_322.c_str()); + +BOOST_DATA_TEST_CASE(const_322_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_322); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_323 = base_dir + "/const.323.wasm"; +std::vector wasm_const_323= read_wasm(wasm_str_const_323.c_str()); + +BOOST_DATA_TEST_CASE(const_323_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_323); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_324 = base_dir + "/const.324.wasm"; +std::vector wasm_const_324= read_wasm(wasm_str_const_324.c_str()); + +BOOST_DATA_TEST_CASE(const_324_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_324); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_325 = base_dir + "/const.325.wasm"; +std::vector wasm_const_325= read_wasm(wasm_str_const_325.c_str()); + +BOOST_DATA_TEST_CASE(const_325_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_325); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_326 = base_dir + "/const.326.wasm"; +std::vector wasm_const_326= read_wasm(wasm_str_const_326.c_str()); + +BOOST_DATA_TEST_CASE(const_326_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_326); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_327 = base_dir + "/const.327.wasm"; +std::vector wasm_const_327= read_wasm(wasm_str_const_327.c_str()); + +BOOST_DATA_TEST_CASE(const_327_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_327); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_328 = base_dir + "/const.328.wasm"; +std::vector wasm_const_328= read_wasm(wasm_str_const_328.c_str()); + +BOOST_DATA_TEST_CASE(const_328_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_328); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_329 = base_dir + "/const.329.wasm"; +std::vector wasm_const_329= read_wasm(wasm_str_const_329.c_str()); + +BOOST_DATA_TEST_CASE(const_329_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_329); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_330 = base_dir + "/const.330.wasm"; +std::vector wasm_const_330= read_wasm(wasm_str_const_330.c_str()); + +BOOST_DATA_TEST_CASE(const_330_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_330); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_331 = base_dir + "/const.331.wasm"; +std::vector wasm_const_331= read_wasm(wasm_str_const_331.c_str()); + +BOOST_DATA_TEST_CASE(const_331_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_331); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_332 = base_dir + "/const.332.wasm"; +std::vector wasm_const_332= read_wasm(wasm_str_const_332.c_str()); + +BOOST_DATA_TEST_CASE(const_332_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_332); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_333 = base_dir + "/const.333.wasm"; +std::vector wasm_const_333= read_wasm(wasm_str_const_333.c_str()); + +BOOST_DATA_TEST_CASE(const_333_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_333); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_334 = base_dir + "/const.334.wasm"; +std::vector wasm_const_334= read_wasm(wasm_str_const_334.c_str()); + +BOOST_DATA_TEST_CASE(const_334_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_334); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_335 = base_dir + "/const.335.wasm"; +std::vector wasm_const_335= read_wasm(wasm_str_const_335.c_str()); + +BOOST_DATA_TEST_CASE(const_335_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_335); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_336 = base_dir + "/const.336.wasm"; +std::vector wasm_const_336= read_wasm(wasm_str_const_336.c_str()); + +BOOST_DATA_TEST_CASE(const_336_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_336); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_337 = base_dir + "/const.337.wasm"; +std::vector wasm_const_337= read_wasm(wasm_str_const_337.c_str()); + +BOOST_DATA_TEST_CASE(const_337_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_337); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_338 = base_dir + "/const.338.wasm"; +std::vector wasm_const_338= read_wasm(wasm_str_const_338.c_str()); + +BOOST_DATA_TEST_CASE(const_338_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_338); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_339 = base_dir + "/const.339.wasm"; +std::vector wasm_const_339= read_wasm(wasm_str_const_339.c_str()); + +BOOST_DATA_TEST_CASE(const_339_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_339); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_34 = base_dir + "/const.34.wasm"; +std::vector wasm_const_34= read_wasm(wasm_str_const_34.c_str()); + +BOOST_DATA_TEST_CASE(const_34_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_34); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_340 = base_dir + "/const.340.wasm"; +std::vector wasm_const_340= read_wasm(wasm_str_const_340.c_str()); + +BOOST_DATA_TEST_CASE(const_340_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_340); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_341 = base_dir + "/const.341.wasm"; +std::vector wasm_const_341= read_wasm(wasm_str_const_341.c_str()); + +BOOST_DATA_TEST_CASE(const_341_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_341); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_342 = base_dir + "/const.342.wasm"; +std::vector wasm_const_342= read_wasm(wasm_str_const_342.c_str()); + +BOOST_DATA_TEST_CASE(const_342_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_342); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_343 = base_dir + "/const.343.wasm"; +std::vector wasm_const_343= read_wasm(wasm_str_const_343.c_str()); + +BOOST_DATA_TEST_CASE(const_343_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_343); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_344 = base_dir + "/const.344.wasm"; +std::vector wasm_const_344= read_wasm(wasm_str_const_344.c_str()); + +BOOST_DATA_TEST_CASE(const_344_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_344); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_345 = base_dir + "/const.345.wasm"; +std::vector wasm_const_345= read_wasm(wasm_str_const_345.c_str()); + +BOOST_DATA_TEST_CASE(const_345_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_345); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_346 = base_dir + "/const.346.wasm"; +std::vector wasm_const_346= read_wasm(wasm_str_const_346.c_str()); + +BOOST_DATA_TEST_CASE(const_346_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_346); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_347 = base_dir + "/const.347.wasm"; +std::vector wasm_const_347= read_wasm(wasm_str_const_347.c_str()); + +BOOST_DATA_TEST_CASE(const_347_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_347); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_348 = base_dir + "/const.348.wasm"; +std::vector wasm_const_348= read_wasm(wasm_str_const_348.c_str()); + +BOOST_DATA_TEST_CASE(const_348_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_348); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_349 = base_dir + "/const.349.wasm"; +std::vector wasm_const_349= read_wasm(wasm_str_const_349.c_str()); + +BOOST_DATA_TEST_CASE(const_349_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_349); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_35 = base_dir + "/const.35.wasm"; +std::vector wasm_const_35= read_wasm(wasm_str_const_35.c_str()); + +BOOST_DATA_TEST_CASE(const_35_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_35); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_350 = base_dir + "/const.350.wasm"; +std::vector wasm_const_350= read_wasm(wasm_str_const_350.c_str()); + +BOOST_DATA_TEST_CASE(const_350_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_350); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_351 = base_dir + "/const.351.wasm"; +std::vector wasm_const_351= read_wasm(wasm_str_const_351.c_str()); + +BOOST_DATA_TEST_CASE(const_351_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_351); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_352 = base_dir + "/const.352.wasm"; +std::vector wasm_const_352= read_wasm(wasm_str_const_352.c_str()); + +BOOST_DATA_TEST_CASE(const_352_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_352); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_353 = base_dir + "/const.353.wasm"; +std::vector wasm_const_353= read_wasm(wasm_str_const_353.c_str()); + +BOOST_DATA_TEST_CASE(const_353_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_353); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_354 = base_dir + "/const.354.wasm"; +std::vector wasm_const_354= read_wasm(wasm_str_const_354.c_str()); + +BOOST_DATA_TEST_CASE(const_354_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_354); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_355 = base_dir + "/const.355.wasm"; +std::vector wasm_const_355= read_wasm(wasm_str_const_355.c_str()); + +BOOST_DATA_TEST_CASE(const_355_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_355); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_356 = base_dir + "/const.356.wasm"; +std::vector wasm_const_356= read_wasm(wasm_str_const_356.c_str()); + +BOOST_DATA_TEST_CASE(const_356_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_356); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_357 = base_dir + "/const.357.wasm"; +std::vector wasm_const_357= read_wasm(wasm_str_const_357.c_str()); + +BOOST_DATA_TEST_CASE(const_357_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_357); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_358 = base_dir + "/const.358.wasm"; +std::vector wasm_const_358= read_wasm(wasm_str_const_358.c_str()); + +BOOST_DATA_TEST_CASE(const_358_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_358); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_359 = base_dir + "/const.359.wasm"; +std::vector wasm_const_359= read_wasm(wasm_str_const_359.c_str()); + +BOOST_DATA_TEST_CASE(const_359_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_359); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_360 = base_dir + "/const.360.wasm"; +std::vector wasm_const_360= read_wasm(wasm_str_const_360.c_str()); + +BOOST_DATA_TEST_CASE(const_360_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_360); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_361 = base_dir + "/const.361.wasm"; +std::vector wasm_const_361= read_wasm(wasm_str_const_361.c_str()); + +BOOST_DATA_TEST_CASE(const_361_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_361); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_362 = base_dir + "/const.362.wasm"; +std::vector wasm_const_362= read_wasm(wasm_str_const_362.c_str()); + +BOOST_DATA_TEST_CASE(const_362_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_362); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_363 = base_dir + "/const.363.wasm"; +std::vector wasm_const_363= read_wasm(wasm_str_const_363.c_str()); + +BOOST_DATA_TEST_CASE(const_363_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_363); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_364 = base_dir + "/const.364.wasm"; +std::vector wasm_const_364= read_wasm(wasm_str_const_364.c_str()); + +BOOST_DATA_TEST_CASE(const_364_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_364); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_365 = base_dir + "/const.365.wasm"; +std::vector wasm_const_365= read_wasm(wasm_str_const_365.c_str()); + +BOOST_DATA_TEST_CASE(const_365_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_365); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_366 = base_dir + "/const.366.wasm"; +std::vector wasm_const_366= read_wasm(wasm_str_const_366.c_str()); + +BOOST_DATA_TEST_CASE(const_366_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_366); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_367 = base_dir + "/const.367.wasm"; +std::vector wasm_const_367= read_wasm(wasm_str_const_367.c_str()); + +BOOST_DATA_TEST_CASE(const_367_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_367); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_38 = base_dir + "/const.38.wasm"; +std::vector wasm_const_38= read_wasm(wasm_str_const_38.c_str()); + +BOOST_DATA_TEST_CASE(const_38_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_38); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_39 = base_dir + "/const.39.wasm"; +std::vector wasm_const_39= read_wasm(wasm_str_const_39.c_str()); + +BOOST_DATA_TEST_CASE(const_39_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_39); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_4 = base_dir + "/const.4.wasm"; +std::vector wasm_const_4= read_wasm(wasm_str_const_4.c_str()); + +BOOST_DATA_TEST_CASE(const_4_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_40 = base_dir + "/const.40.wasm"; +std::vector wasm_const_40= read_wasm(wasm_str_const_40.c_str()); + +BOOST_DATA_TEST_CASE(const_40_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_40); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_41 = base_dir + "/const.41.wasm"; +std::vector wasm_const_41= read_wasm(wasm_str_const_41.c_str()); + +BOOST_DATA_TEST_CASE(const_41_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_41); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_42 = base_dir + "/const.42.wasm"; +std::vector wasm_const_42= read_wasm(wasm_str_const_42.c_str()); + +BOOST_DATA_TEST_CASE(const_42_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_42); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_43 = base_dir + "/const.43.wasm"; +std::vector wasm_const_43= read_wasm(wasm_str_const_43.c_str()); + +BOOST_DATA_TEST_CASE(const_43_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_43); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_44 = base_dir + "/const.44.wasm"; +std::vector wasm_const_44= read_wasm(wasm_str_const_44.c_str()); + +BOOST_DATA_TEST_CASE(const_44_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_44); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_45 = base_dir + "/const.45.wasm"; +std::vector wasm_const_45= read_wasm(wasm_str_const_45.c_str()); + +BOOST_DATA_TEST_CASE(const_45_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_45); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_5 = base_dir + "/const.5.wasm"; +std::vector wasm_const_5= read_wasm(wasm_str_const_5.c_str()); + +BOOST_DATA_TEST_CASE(const_5_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_50 = base_dir + "/const.50.wasm"; +std::vector wasm_const_50= read_wasm(wasm_str_const_50.c_str()); + +BOOST_DATA_TEST_CASE(const_50_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_50); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_51 = base_dir + "/const.51.wasm"; +std::vector wasm_const_51= read_wasm(wasm_str_const_51.c_str()); + +BOOST_DATA_TEST_CASE(const_51_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_51); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_54 = base_dir + "/const.54.wasm"; +std::vector wasm_const_54= read_wasm(wasm_str_const_54.c_str()); + +BOOST_DATA_TEST_CASE(const_54_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_54); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_55 = base_dir + "/const.55.wasm"; +std::vector wasm_const_55= read_wasm(wasm_str_const_55.c_str()); + +BOOST_DATA_TEST_CASE(const_55_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_55); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_58 = base_dir + "/const.58.wasm"; +std::vector wasm_const_58= read_wasm(wasm_str_const_58.c_str()); + +BOOST_DATA_TEST_CASE(const_58_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_58); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_59 = base_dir + "/const.59.wasm"; +std::vector wasm_const_59= read_wasm(wasm_str_const_59.c_str()); + +BOOST_DATA_TEST_CASE(const_59_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_59); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_60 = base_dir + "/const.60.wasm"; +std::vector wasm_const_60= read_wasm(wasm_str_const_60.c_str()); + +BOOST_DATA_TEST_CASE(const_60_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_60); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_61 = base_dir + "/const.61.wasm"; +std::vector wasm_const_61= read_wasm(wasm_str_const_61.c_str()); + +BOOST_DATA_TEST_CASE(const_61_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_61); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_68 = base_dir + "/const.68.wasm"; +std::vector wasm_const_68= read_wasm(wasm_str_const_68.c_str()); + +BOOST_DATA_TEST_CASE(const_68_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_68); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_69 = base_dir + "/const.69.wasm"; +std::vector wasm_const_69= read_wasm(wasm_str_const_69.c_str()); + +BOOST_DATA_TEST_CASE(const_69_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_69); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_70 = base_dir + "/const.70.wasm"; +std::vector wasm_const_70= read_wasm(wasm_str_const_70.c_str()); + +BOOST_DATA_TEST_CASE(const_70_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_70); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_71 = base_dir + "/const.71.wasm"; +std::vector wasm_const_71= read_wasm(wasm_str_const_71.c_str()); + +BOOST_DATA_TEST_CASE(const_71_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_71); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_72 = base_dir + "/const.72.wasm"; +std::vector wasm_const_72= read_wasm(wasm_str_const_72.c_str()); + +BOOST_DATA_TEST_CASE(const_72_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_72); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_73 = base_dir + "/const.73.wasm"; +std::vector wasm_const_73= read_wasm(wasm_str_const_73.c_str()); + +BOOST_DATA_TEST_CASE(const_73_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_73); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_74 = base_dir + "/const.74.wasm"; +std::vector wasm_const_74= read_wasm(wasm_str_const_74.c_str()); + +BOOST_DATA_TEST_CASE(const_74_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_74); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_75 = base_dir + "/const.75.wasm"; +std::vector wasm_const_75= read_wasm(wasm_str_const_75.c_str()); + +BOOST_DATA_TEST_CASE(const_75_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_75); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_76 = base_dir + "/const.76.wasm"; +std::vector wasm_const_76= read_wasm(wasm_str_const_76.c_str()); + +BOOST_DATA_TEST_CASE(const_76_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_76); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_77 = base_dir + "/const.77.wasm"; +std::vector wasm_const_77= read_wasm(wasm_str_const_77.c_str()); + +BOOST_DATA_TEST_CASE(const_77_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_77); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_78 = base_dir + "/const.78.wasm"; +std::vector wasm_const_78= read_wasm(wasm_str_const_78.c_str()); + +BOOST_DATA_TEST_CASE(const_78_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_78); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_79 = base_dir + "/const.79.wasm"; +std::vector wasm_const_79= read_wasm(wasm_str_const_79.c_str()); + +BOOST_DATA_TEST_CASE(const_79_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_79); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_8 = base_dir + "/const.8.wasm"; +std::vector wasm_const_8= read_wasm(wasm_str_const_8.c_str()); + +BOOST_DATA_TEST_CASE(const_8_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_80 = base_dir + "/const.80.wasm"; +std::vector wasm_const_80= read_wasm(wasm_str_const_80.c_str()); + +BOOST_DATA_TEST_CASE(const_80_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_80); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_81 = base_dir + "/const.81.wasm"; +std::vector wasm_const_81= read_wasm(wasm_str_const_81.c_str()); + +BOOST_DATA_TEST_CASE(const_81_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_81); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_82 = base_dir + "/const.82.wasm"; +std::vector wasm_const_82= read_wasm(wasm_str_const_82.c_str()); + +BOOST_DATA_TEST_CASE(const_82_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_82); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_83 = base_dir + "/const.83.wasm"; +std::vector wasm_const_83= read_wasm(wasm_str_const_83.c_str()); + +BOOST_DATA_TEST_CASE(const_83_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_83); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_84 = base_dir + "/const.84.wasm"; +std::vector wasm_const_84= read_wasm(wasm_str_const_84.c_str()); + +BOOST_DATA_TEST_CASE(const_84_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_84); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_85 = base_dir + "/const.85.wasm"; +std::vector wasm_const_85= read_wasm(wasm_str_const_85.c_str()); + +BOOST_DATA_TEST_CASE(const_85_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_85); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_86 = base_dir + "/const.86.wasm"; +std::vector wasm_const_86= read_wasm(wasm_str_const_86.c_str()); + +BOOST_DATA_TEST_CASE(const_86_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_86); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_87 = base_dir + "/const.87.wasm"; +std::vector wasm_const_87= read_wasm(wasm_str_const_87.c_str()); + +BOOST_DATA_TEST_CASE(const_87_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_87); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_88 = base_dir + "/const.88.wasm"; +std::vector wasm_const_88= read_wasm(wasm_str_const_88.c_str()); + +BOOST_DATA_TEST_CASE(const_88_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_88); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_89 = base_dir + "/const.89.wasm"; +std::vector wasm_const_89= read_wasm(wasm_str_const_89.c_str()); + +BOOST_DATA_TEST_CASE(const_89_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_89); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_9 = base_dir + "/const.9.wasm"; +std::vector wasm_const_9= read_wasm(wasm_str_const_9.c_str()); + +BOOST_DATA_TEST_CASE(const_9_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_9); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_90 = base_dir + "/const.90.wasm"; +std::vector wasm_const_90= read_wasm(wasm_str_const_90.c_str()); + +BOOST_DATA_TEST_CASE(const_90_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_90); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_91 = base_dir + "/const.91.wasm"; +std::vector wasm_const_91= read_wasm(wasm_str_const_91.c_str()); + +BOOST_DATA_TEST_CASE(const_91_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_91); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_92 = base_dir + "/const.92.wasm"; +std::vector wasm_const_92= read_wasm(wasm_str_const_92.c_str()); + +BOOST_DATA_TEST_CASE(const_92_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_92); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_93 = base_dir + "/const.93.wasm"; +std::vector wasm_const_93= read_wasm(wasm_str_const_93.c_str()); + +BOOST_DATA_TEST_CASE(const_93_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_93); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_94 = base_dir + "/const.94.wasm"; +std::vector wasm_const_94= read_wasm(wasm_str_const_94.c_str()); + +BOOST_DATA_TEST_CASE(const_94_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_94); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_95 = base_dir + "/const.95.wasm"; +std::vector wasm_const_95= read_wasm(wasm_str_const_95.c_str()); + +BOOST_DATA_TEST_CASE(const_95_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_95); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_96 = base_dir + "/const.96.wasm"; +std::vector wasm_const_96= read_wasm(wasm_str_const_96.c_str()); + +BOOST_DATA_TEST_CASE(const_96_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_96); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_97 = base_dir + "/const.97.wasm"; +std::vector wasm_const_97= read_wasm(wasm_str_const_97.c_str()); + +BOOST_DATA_TEST_CASE(const_97_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_97); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_98 = base_dir + "/const.98.wasm"; +std::vector wasm_const_98= read_wasm(wasm_str_const_98.c_str()); + +BOOST_DATA_TEST_CASE(const_98_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_98); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_const_99 = base_dir + "/const.99.wasm"; +std::vector wasm_const_99= read_wasm(wasm_str_const_99.c_str()); + +BOOST_DATA_TEST_CASE(const_99_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_const_99); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/conversions.cpp b/wasm-spec-tests/generated-tests/conversions.cpp new file mode 100644 index 0000000000..b12b68ff6e --- /dev/null +++ b/wasm-spec-tests/generated-tests/conversions.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_conversions_0 = base_dir + "/conversions.0.wasm"; +std::vector wasm_conversions_0= read_wasm(wasm_str_conversions_0.c_str()); + +BOOST_DATA_TEST_CASE(conversions_0_check_throw, boost::unit_test::data::xrange(0,67), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_conversions_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(conversions_0_pass, boost::unit_test::data::xrange(67,71), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_conversions_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/custom.cpp b/wasm-spec-tests/generated-tests/custom.cpp new file mode 100644 index 0000000000..80ffa0a54f --- /dev/null +++ b/wasm-spec-tests/generated-tests/custom.cpp @@ -0,0 +1,64 @@ +#include + +const string wasm_str_custom_0 = base_dir + "/custom.0.wasm"; +std::vector wasm_custom_0= read_wasm(wasm_str_custom_0.c_str()); + +BOOST_DATA_TEST_CASE(custom_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_custom_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_custom_1 = base_dir + "/custom.1.wasm"; +std::vector wasm_custom_1= read_wasm(wasm_str_custom_1.c_str()); + +BOOST_DATA_TEST_CASE(custom_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_custom_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_custom_2 = base_dir + "/custom.2.wasm"; +std::vector wasm_custom_2= read_wasm(wasm_str_custom_2.c_str()); + +BOOST_DATA_TEST_CASE(custom_2_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_custom_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/endianness.cpp b/wasm-spec-tests/generated-tests/endianness.cpp new file mode 100644 index 0000000000..236f95b559 --- /dev/null +++ b/wasm-spec-tests/generated-tests/endianness.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_endianness_0 = base_dir + "/endianness.0.wasm"; +std::vector wasm_endianness_0= read_wasm(wasm_str_endianness_0.c_str()); + +BOOST_DATA_TEST_CASE(endianness_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_endianness_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/f32.cpp b/wasm-spec-tests/generated-tests/f32.cpp new file mode 100644 index 0000000000..1d237ee8d8 --- /dev/null +++ b/wasm-spec-tests/generated-tests/f32.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_f32_0 = base_dir + "/f32.0.wasm"; +std::vector wasm_f32_0= read_wasm(wasm_str_f32_0.c_str()); + +BOOST_DATA_TEST_CASE(f32_0_pass, boost::unit_test::data::xrange(0,25), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_f32_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/f32_bitwise.cpp b/wasm-spec-tests/generated-tests/f32_bitwise.cpp new file mode 100644 index 0000000000..4cdbc9613b --- /dev/null +++ b/wasm-spec-tests/generated-tests/f32_bitwise.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_f32_bitwise_0 = base_dir + "/f32_bitwise.0.wasm"; +std::vector wasm_f32_bitwise_0= read_wasm(wasm_str_f32_bitwise_0.c_str()); + +BOOST_DATA_TEST_CASE(f32_bitwise_0_pass, boost::unit_test::data::xrange(0,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_f32_bitwise_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/f32_cmp.cpp b/wasm-spec-tests/generated-tests/f32_cmp.cpp new file mode 100644 index 0000000000..18dfcd2c78 --- /dev/null +++ b/wasm-spec-tests/generated-tests/f32_cmp.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_f32_cmp_0 = base_dir + "/f32_cmp.0.wasm"; +std::vector wasm_f32_cmp_0= read_wasm(wasm_str_f32_cmp_0.c_str()); + +BOOST_DATA_TEST_CASE(f32_cmp_0_pass, boost::unit_test::data::xrange(0,24), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_f32_cmp_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/f64.cpp b/wasm-spec-tests/generated-tests/f64.cpp new file mode 100644 index 0000000000..2f60638ba5 --- /dev/null +++ b/wasm-spec-tests/generated-tests/f64.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_f64_0 = base_dir + "/f64.0.wasm"; +std::vector wasm_f64_0= read_wasm(wasm_str_f64_0.c_str()); + +BOOST_DATA_TEST_CASE(f64_0_pass, boost::unit_test::data::xrange(0,25), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_f64_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/f64_bitwise.cpp b/wasm-spec-tests/generated-tests/f64_bitwise.cpp new file mode 100644 index 0000000000..6508a94e10 --- /dev/null +++ b/wasm-spec-tests/generated-tests/f64_bitwise.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_f64_bitwise_0 = base_dir + "/f64_bitwise.0.wasm"; +std::vector wasm_f64_bitwise_0= read_wasm(wasm_str_f64_bitwise_0.c_str()); + +BOOST_DATA_TEST_CASE(f64_bitwise_0_pass, boost::unit_test::data::xrange(0,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_f64_bitwise_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/f64_cmp.cpp b/wasm-spec-tests/generated-tests/f64_cmp.cpp new file mode 100644 index 0000000000..6c31f155bc --- /dev/null +++ b/wasm-spec-tests/generated-tests/f64_cmp.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_f64_cmp_0 = base_dir + "/f64_cmp.0.wasm"; +std::vector wasm_f64_cmp_0= read_wasm(wasm_str_f64_cmp_0.c_str()); + +BOOST_DATA_TEST_CASE(f64_cmp_0_pass, boost::unit_test::data::xrange(0,24), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_f64_cmp_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/fac.cpp b/wasm-spec-tests/generated-tests/fac.cpp new file mode 100644 index 0000000000..01d482b073 --- /dev/null +++ b/wasm-spec-tests/generated-tests/fac.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_fac_0 = base_dir + "/fac.0.wasm"; +std::vector wasm_fac_0= read_wasm(wasm_str_fac_0.c_str()); + +BOOST_DATA_TEST_CASE(fac_0_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_fac_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(fac_0_pass, boost::unit_test::data::xrange(1,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_fac_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/float_exprs.cpp b/wasm-spec-tests/generated-tests/float_exprs.cpp new file mode 100644 index 0000000000..036de3936a --- /dev/null +++ b/wasm-spec-tests/generated-tests/float_exprs.cpp @@ -0,0 +1,2017 @@ +#include + +const string wasm_str_float_exprs_0 = base_dir + "/float_exprs.0.wasm"; +std::vector wasm_float_exprs_0= read_wasm(wasm_str_float_exprs_0.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_1 = base_dir + "/float_exprs.1.wasm"; +std::vector wasm_float_exprs_1= read_wasm(wasm_str_float_exprs_1.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_1_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_10 = base_dir + "/float_exprs.10.wasm"; +std::vector wasm_float_exprs_10= read_wasm(wasm_str_float_exprs_10.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_10_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_10); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_11 = base_dir + "/float_exprs.11.wasm"; +std::vector wasm_float_exprs_11= read_wasm(wasm_str_float_exprs_11.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_11_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_11); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_12 = base_dir + "/float_exprs.12.wasm"; +std::vector wasm_float_exprs_12= read_wasm(wasm_str_float_exprs_12.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_12_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_12); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_13 = base_dir + "/float_exprs.13.wasm"; +std::vector wasm_float_exprs_13= read_wasm(wasm_str_float_exprs_13.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_13_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_13); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_14 = base_dir + "/float_exprs.14.wasm"; +std::vector wasm_float_exprs_14= read_wasm(wasm_str_float_exprs_14.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_14_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_14); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_15 = base_dir + "/float_exprs.15.wasm"; +std::vector wasm_float_exprs_15= read_wasm(wasm_str_float_exprs_15.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_15_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_15); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_16 = base_dir + "/float_exprs.16.wasm"; +std::vector wasm_float_exprs_16= read_wasm(wasm_str_float_exprs_16.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_16_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_16); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_17 = base_dir + "/float_exprs.17.wasm"; +std::vector wasm_float_exprs_17= read_wasm(wasm_str_float_exprs_17.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_17_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_17); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_18 = base_dir + "/float_exprs.18.wasm"; +std::vector wasm_float_exprs_18= read_wasm(wasm_str_float_exprs_18.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_18_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_18); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_19 = base_dir + "/float_exprs.19.wasm"; +std::vector wasm_float_exprs_19= read_wasm(wasm_str_float_exprs_19.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_19_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_19); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_2 = base_dir + "/float_exprs.2.wasm"; +std::vector wasm_float_exprs_2= read_wasm(wasm_str_float_exprs_2.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_2_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_20 = base_dir + "/float_exprs.20.wasm"; +std::vector wasm_float_exprs_20= read_wasm(wasm_str_float_exprs_20.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_20_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_20); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_21 = base_dir + "/float_exprs.21.wasm"; +std::vector wasm_float_exprs_21= read_wasm(wasm_str_float_exprs_21.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_21_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_21); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_22 = base_dir + "/float_exprs.22.wasm"; +std::vector wasm_float_exprs_22= read_wasm(wasm_str_float_exprs_22.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_22_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_22); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_23 = base_dir + "/float_exprs.23.wasm"; +std::vector wasm_float_exprs_23= read_wasm(wasm_str_float_exprs_23.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_23_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_23); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_24 = base_dir + "/float_exprs.24.wasm"; +std::vector wasm_float_exprs_24= read_wasm(wasm_str_float_exprs_24.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_24_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_24); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_25 = base_dir + "/float_exprs.25.wasm"; +std::vector wasm_float_exprs_25= read_wasm(wasm_str_float_exprs_25.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_25_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_25); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_26 = base_dir + "/float_exprs.26.wasm"; +std::vector wasm_float_exprs_26= read_wasm(wasm_str_float_exprs_26.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_26_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_26); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_27 = base_dir + "/float_exprs.27.wasm"; +std::vector wasm_float_exprs_27= read_wasm(wasm_str_float_exprs_27.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_27_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_27); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_28 = base_dir + "/float_exprs.28.wasm"; +std::vector wasm_float_exprs_28= read_wasm(wasm_str_float_exprs_28.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_28_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_28); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_29 = base_dir + "/float_exprs.29.wasm"; +std::vector wasm_float_exprs_29= read_wasm(wasm_str_float_exprs_29.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_29_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_29); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_3 = base_dir + "/float_exprs.3.wasm"; +std::vector wasm_float_exprs_3= read_wasm(wasm_str_float_exprs_3.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_3_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_30 = base_dir + "/float_exprs.30.wasm"; +std::vector wasm_float_exprs_30= read_wasm(wasm_str_float_exprs_30.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_30_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_30); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_31 = base_dir + "/float_exprs.31.wasm"; +std::vector wasm_float_exprs_31= read_wasm(wasm_str_float_exprs_31.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_31_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_31); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_32 = base_dir + "/float_exprs.32.wasm"; +std::vector wasm_float_exprs_32= read_wasm(wasm_str_float_exprs_32.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_32_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_32); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_33 = base_dir + "/float_exprs.33.wasm"; +std::vector wasm_float_exprs_33= read_wasm(wasm_str_float_exprs_33.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_33_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_33); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_34 = base_dir + "/float_exprs.34.wasm"; +std::vector wasm_float_exprs_34= read_wasm(wasm_str_float_exprs_34.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_34_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_34); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_35 = base_dir + "/float_exprs.35.wasm"; +std::vector wasm_float_exprs_35= read_wasm(wasm_str_float_exprs_35.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_35_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_35); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_36 = base_dir + "/float_exprs.36.wasm"; +std::vector wasm_float_exprs_36= read_wasm(wasm_str_float_exprs_36.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_36_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_36); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_37 = base_dir + "/float_exprs.37.wasm"; +std::vector wasm_float_exprs_37= read_wasm(wasm_str_float_exprs_37.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_37_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_37); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_38 = base_dir + "/float_exprs.38.wasm"; +std::vector wasm_float_exprs_38= read_wasm(wasm_str_float_exprs_38.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_38_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_38); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_39 = base_dir + "/float_exprs.39.wasm"; +std::vector wasm_float_exprs_39= read_wasm(wasm_str_float_exprs_39.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_39_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_39); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_4 = base_dir + "/float_exprs.4.wasm"; +std::vector wasm_float_exprs_4= read_wasm(wasm_str_float_exprs_4.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_4_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_40 = base_dir + "/float_exprs.40.wasm"; +std::vector wasm_float_exprs_40= read_wasm(wasm_str_float_exprs_40.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_40_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_40); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_41 = base_dir + "/float_exprs.41.wasm"; +std::vector wasm_float_exprs_41= read_wasm(wasm_str_float_exprs_41.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_41_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_41); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_42 = base_dir + "/float_exprs.42.wasm"; +std::vector wasm_float_exprs_42= read_wasm(wasm_str_float_exprs_42.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_42_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_42); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_43 = base_dir + "/float_exprs.43.wasm"; +std::vector wasm_float_exprs_43= read_wasm(wasm_str_float_exprs_43.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_43_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_43); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_44 = base_dir + "/float_exprs.44.wasm"; +std::vector wasm_float_exprs_44= read_wasm(wasm_str_float_exprs_44.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_44_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_44); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_45 = base_dir + "/float_exprs.45.wasm"; +std::vector wasm_float_exprs_45= read_wasm(wasm_str_float_exprs_45.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_45_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_45); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_46 = base_dir + "/float_exprs.46.wasm"; +std::vector wasm_float_exprs_46= read_wasm(wasm_str_float_exprs_46.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_46_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_46); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_47 = base_dir + "/float_exprs.47.wasm"; +std::vector wasm_float_exprs_47= read_wasm(wasm_str_float_exprs_47.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_47_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_47); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_48 = base_dir + "/float_exprs.48.wasm"; +std::vector wasm_float_exprs_48= read_wasm(wasm_str_float_exprs_48.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_48_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_48); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_49 = base_dir + "/float_exprs.49.wasm"; +std::vector wasm_float_exprs_49= read_wasm(wasm_str_float_exprs_49.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_49_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_49); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_5 = base_dir + "/float_exprs.5.wasm"; +std::vector wasm_float_exprs_5= read_wasm(wasm_str_float_exprs_5.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_5_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_50 = base_dir + "/float_exprs.50.wasm"; +std::vector wasm_float_exprs_50= read_wasm(wasm_str_float_exprs_50.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_50_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_50); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_51 = base_dir + "/float_exprs.51.wasm"; +std::vector wasm_float_exprs_51= read_wasm(wasm_str_float_exprs_51.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_51_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_51); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_52 = base_dir + "/float_exprs.52.wasm"; +std::vector wasm_float_exprs_52= read_wasm(wasm_str_float_exprs_52.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_52_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_52); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_53 = base_dir + "/float_exprs.53.wasm"; +std::vector wasm_float_exprs_53= read_wasm(wasm_str_float_exprs_53.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_53_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_53); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_54 = base_dir + "/float_exprs.54.wasm"; +std::vector wasm_float_exprs_54= read_wasm(wasm_str_float_exprs_54.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_54_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_54); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_55 = base_dir + "/float_exprs.55.wasm"; +std::vector wasm_float_exprs_55= read_wasm(wasm_str_float_exprs_55.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_55_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_55); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_56 = base_dir + "/float_exprs.56.wasm"; +std::vector wasm_float_exprs_56= read_wasm(wasm_str_float_exprs_56.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_56_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_56); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_57 = base_dir + "/float_exprs.57.wasm"; +std::vector wasm_float_exprs_57= read_wasm(wasm_str_float_exprs_57.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_57_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_57); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_58 = base_dir + "/float_exprs.58.wasm"; +std::vector wasm_float_exprs_58= read_wasm(wasm_str_float_exprs_58.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_58_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_58); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_59 = base_dir + "/float_exprs.59.wasm"; +std::vector wasm_float_exprs_59= read_wasm(wasm_str_float_exprs_59.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_59_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_59); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_6 = base_dir + "/float_exprs.6.wasm"; +std::vector wasm_float_exprs_6= read_wasm(wasm_str_float_exprs_6.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_6_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_6); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_60 = base_dir + "/float_exprs.60.wasm"; +std::vector wasm_float_exprs_60= read_wasm(wasm_str_float_exprs_60.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_60_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_60); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_61 = base_dir + "/float_exprs.61.wasm"; +std::vector wasm_float_exprs_61= read_wasm(wasm_str_float_exprs_61.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_61_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_61); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_62 = base_dir + "/float_exprs.62.wasm"; +std::vector wasm_float_exprs_62= read_wasm(wasm_str_float_exprs_62.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_62_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_62); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_63 = base_dir + "/float_exprs.63.wasm"; +std::vector wasm_float_exprs_63= read_wasm(wasm_str_float_exprs_63.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_63_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_63); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_64 = base_dir + "/float_exprs.64.wasm"; +std::vector wasm_float_exprs_64= read_wasm(wasm_str_float_exprs_64.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_64_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_64); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_65 = base_dir + "/float_exprs.65.wasm"; +std::vector wasm_float_exprs_65= read_wasm(wasm_str_float_exprs_65.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_65_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_65); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_66 = base_dir + "/float_exprs.66.wasm"; +std::vector wasm_float_exprs_66= read_wasm(wasm_str_float_exprs_66.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_66_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_66); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_67 = base_dir + "/float_exprs.67.wasm"; +std::vector wasm_float_exprs_67= read_wasm(wasm_str_float_exprs_67.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_67_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_67); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_68 = base_dir + "/float_exprs.68.wasm"; +std::vector wasm_float_exprs_68= read_wasm(wasm_str_float_exprs_68.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_68_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_68); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_69 = base_dir + "/float_exprs.69.wasm"; +std::vector wasm_float_exprs_69= read_wasm(wasm_str_float_exprs_69.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_69_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_69); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_7 = base_dir + "/float_exprs.7.wasm"; +std::vector wasm_float_exprs_7= read_wasm(wasm_str_float_exprs_7.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_7_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_7); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_70 = base_dir + "/float_exprs.70.wasm"; +std::vector wasm_float_exprs_70= read_wasm(wasm_str_float_exprs_70.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_70_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_70); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_71 = base_dir + "/float_exprs.71.wasm"; +std::vector wasm_float_exprs_71= read_wasm(wasm_str_float_exprs_71.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_71_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_71); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_72 = base_dir + "/float_exprs.72.wasm"; +std::vector wasm_float_exprs_72= read_wasm(wasm_str_float_exprs_72.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_72_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_72); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_73 = base_dir + "/float_exprs.73.wasm"; +std::vector wasm_float_exprs_73= read_wasm(wasm_str_float_exprs_73.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_73_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_73); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_74 = base_dir + "/float_exprs.74.wasm"; +std::vector wasm_float_exprs_74= read_wasm(wasm_str_float_exprs_74.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_74_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_74); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_75 = base_dir + "/float_exprs.75.wasm"; +std::vector wasm_float_exprs_75= read_wasm(wasm_str_float_exprs_75.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_75_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_75); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_76 = base_dir + "/float_exprs.76.wasm"; +std::vector wasm_float_exprs_76= read_wasm(wasm_str_float_exprs_76.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_76_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_76); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_77 = base_dir + "/float_exprs.77.wasm"; +std::vector wasm_float_exprs_77= read_wasm(wasm_str_float_exprs_77.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_77_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_77); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_78 = base_dir + "/float_exprs.78.wasm"; +std::vector wasm_float_exprs_78= read_wasm(wasm_str_float_exprs_78.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_78_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_78); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_79 = base_dir + "/float_exprs.79.wasm"; +std::vector wasm_float_exprs_79= read_wasm(wasm_str_float_exprs_79.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_79_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_79); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_8 = base_dir + "/float_exprs.8.wasm"; +std::vector wasm_float_exprs_8= read_wasm(wasm_str_float_exprs_8.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_8_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_80 = base_dir + "/float_exprs.80.wasm"; +std::vector wasm_float_exprs_80= read_wasm(wasm_str_float_exprs_80.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_80_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_80); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_81 = base_dir + "/float_exprs.81.wasm"; +std::vector wasm_float_exprs_81= read_wasm(wasm_str_float_exprs_81.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_81_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_81); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_82 = base_dir + "/float_exprs.82.wasm"; +std::vector wasm_float_exprs_82= read_wasm(wasm_str_float_exprs_82.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_82_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_82); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_83 = base_dir + "/float_exprs.83.wasm"; +std::vector wasm_float_exprs_83= read_wasm(wasm_str_float_exprs_83.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_83_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_83); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_84 = base_dir + "/float_exprs.84.wasm"; +std::vector wasm_float_exprs_84= read_wasm(wasm_str_float_exprs_84.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_84_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_84); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_85 = base_dir + "/float_exprs.85.wasm"; +std::vector wasm_float_exprs_85= read_wasm(wasm_str_float_exprs_85.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_85_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_85); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_86 = base_dir + "/float_exprs.86.wasm"; +std::vector wasm_float_exprs_86= read_wasm(wasm_str_float_exprs_86.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_86_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_86); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_87 = base_dir + "/float_exprs.87.wasm"; +std::vector wasm_float_exprs_87= read_wasm(wasm_str_float_exprs_87.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_87_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_87); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_88 = base_dir + "/float_exprs.88.wasm"; +std::vector wasm_float_exprs_88= read_wasm(wasm_str_float_exprs_88.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_88_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_88); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_89 = base_dir + "/float_exprs.89.wasm"; +std::vector wasm_float_exprs_89= read_wasm(wasm_str_float_exprs_89.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_89_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_89); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_9 = base_dir + "/float_exprs.9.wasm"; +std::vector wasm_float_exprs_9= read_wasm(wasm_str_float_exprs_9.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_9_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_9); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_90 = base_dir + "/float_exprs.90.wasm"; +std::vector wasm_float_exprs_90= read_wasm(wasm_str_float_exprs_90.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_90_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_90); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_91 = base_dir + "/float_exprs.91.wasm"; +std::vector wasm_float_exprs_91= read_wasm(wasm_str_float_exprs_91.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_91_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_91); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_92 = base_dir + "/float_exprs.92.wasm"; +std::vector wasm_float_exprs_92= read_wasm(wasm_str_float_exprs_92.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_92_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_92); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_93 = base_dir + "/float_exprs.93.wasm"; +std::vector wasm_float_exprs_93= read_wasm(wasm_str_float_exprs_93.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_93_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_93); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_94 = base_dir + "/float_exprs.94.wasm"; +std::vector wasm_float_exprs_94= read_wasm(wasm_str_float_exprs_94.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_94_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_94); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_exprs_95 = base_dir + "/float_exprs.95.wasm"; +std::vector wasm_float_exprs_95= read_wasm(wasm_str_float_exprs_95.c_str()); + +BOOST_DATA_TEST_CASE(float_exprs_95_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_exprs_95); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/float_literals.cpp b/wasm-spec-tests/generated-tests/float_literals.cpp new file mode 100644 index 0000000000..0bf3f93980 --- /dev/null +++ b/wasm-spec-tests/generated-tests/float_literals.cpp @@ -0,0 +1,43 @@ +#include + +const string wasm_str_float_literals_0 = base_dir + "/float_literals.0.wasm"; +std::vector wasm_float_literals_0= read_wasm(wasm_str_float_literals_0.c_str()); + +BOOST_DATA_TEST_CASE(float_literals_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_literals_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_literals_1 = base_dir + "/float_literals.1.wasm"; +std::vector wasm_float_literals_1= read_wasm(wasm_str_float_literals_1.c_str()); + +BOOST_DATA_TEST_CASE(float_literals_1_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_literals_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/float_memory.cpp b/wasm-spec-tests/generated-tests/float_memory.cpp new file mode 100644 index 0000000000..9efe7ccad3 --- /dev/null +++ b/wasm-spec-tests/generated-tests/float_memory.cpp @@ -0,0 +1,127 @@ +#include + +const string wasm_str_float_memory_0 = base_dir + "/float_memory.0.wasm"; +std::vector wasm_float_memory_0= read_wasm(wasm_str_float_memory_0.c_str()); + +BOOST_DATA_TEST_CASE(float_memory_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_memory_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_memory_1 = base_dir + "/float_memory.1.wasm"; +std::vector wasm_float_memory_1= read_wasm(wasm_str_float_memory_1.c_str()); + +BOOST_DATA_TEST_CASE(float_memory_1_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_memory_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_memory_2 = base_dir + "/float_memory.2.wasm"; +std::vector wasm_float_memory_2= read_wasm(wasm_str_float_memory_2.c_str()); + +BOOST_DATA_TEST_CASE(float_memory_2_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_memory_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_memory_3 = base_dir + "/float_memory.3.wasm"; +std::vector wasm_float_memory_3= read_wasm(wasm_str_float_memory_3.c_str()); + +BOOST_DATA_TEST_CASE(float_memory_3_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_memory_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_memory_4 = base_dir + "/float_memory.4.wasm"; +std::vector wasm_float_memory_4= read_wasm(wasm_str_float_memory_4.c_str()); + +BOOST_DATA_TEST_CASE(float_memory_4_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_memory_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_float_memory_5 = base_dir + "/float_memory.5.wasm"; +std::vector wasm_float_memory_5= read_wasm(wasm_str_float_memory_5.c_str()); + +BOOST_DATA_TEST_CASE(float_memory_5_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_memory_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/float_misc.cpp b/wasm-spec-tests/generated-tests/float_misc.cpp new file mode 100644 index 0000000000..81006530c7 --- /dev/null +++ b/wasm-spec-tests/generated-tests/float_misc.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_float_misc_0 = base_dir + "/float_misc.0.wasm"; +std::vector wasm_float_misc_0= read_wasm(wasm_str_float_misc_0.c_str()); + +BOOST_DATA_TEST_CASE(float_misc_0_pass, boost::unit_test::data::xrange(0,5), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_float_misc_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/forward.cpp b/wasm-spec-tests/generated-tests/forward.cpp new file mode 100644 index 0000000000..07623e82e6 --- /dev/null +++ b/wasm-spec-tests/generated-tests/forward.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_forward_0 = base_dir + "/forward.0.wasm"; +std::vector wasm_forward_0= read_wasm(wasm_str_forward_0.c_str()); + +BOOST_DATA_TEST_CASE(forward_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_forward_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/func.cpp b/wasm-spec-tests/generated-tests/func.cpp new file mode 100644 index 0000000000..cd991833d3 --- /dev/null +++ b/wasm-spec-tests/generated-tests/func.cpp @@ -0,0 +1,64 @@ +#include + +const string wasm_str_func_0 = base_dir + "/func.0.wasm"; +std::vector wasm_func_0= read_wasm(wasm_str_func_0.c_str()); + +BOOST_DATA_TEST_CASE(func_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_func_1 = base_dir + "/func.1.wasm"; +std::vector wasm_func_1= read_wasm(wasm_str_func_1.c_str()); + +BOOST_DATA_TEST_CASE(func_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_func_3 = base_dir + "/func.3.wasm"; +std::vector wasm_func_3= read_wasm(wasm_str_func_3.c_str()); + +BOOST_DATA_TEST_CASE(func_3_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/func_ptrs.cpp b/wasm-spec-tests/generated-tests/func_ptrs.cpp new file mode 100644 index 0000000000..818aac2327 --- /dev/null +++ b/wasm-spec-tests/generated-tests/func_ptrs.cpp @@ -0,0 +1,81 @@ +#include + +const string wasm_str_func_ptrs_0 = base_dir + "/func_ptrs.0.wasm"; +std::vector wasm_func_ptrs_0= read_wasm(wasm_str_func_ptrs_0.c_str()); + +BOOST_DATA_TEST_CASE(func_ptrs_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_ptrs_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_func_ptrs_8 = base_dir + "/func_ptrs.8.wasm"; +std::vector wasm_func_ptrs_8= read_wasm(wasm_str_func_ptrs_8.c_str()); + +BOOST_DATA_TEST_CASE(func_ptrs_8_check_throw, boost::unit_test::data::xrange(0,6), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_ptrs_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(func_ptrs_8_pass, boost::unit_test::data::xrange(6,7), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_ptrs_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_func_ptrs_9 = base_dir + "/func_ptrs.9.wasm"; +std::vector wasm_func_ptrs_9= read_wasm(wasm_str_func_ptrs_9.c_str()); + +BOOST_DATA_TEST_CASE(func_ptrs_9_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_func_ptrs_9); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/globals.cpp b/wasm-spec-tests/generated-tests/globals.cpp new file mode 100644 index 0000000000..1b0dd57020 --- /dev/null +++ b/wasm-spec-tests/generated-tests/globals.cpp @@ -0,0 +1,60 @@ +#include + +const string wasm_str_globals_0 = base_dir + "/globals.0.wasm"; +std::vector wasm_globals_0= read_wasm(wasm_str_globals_0.c_str()); + +BOOST_DATA_TEST_CASE(globals_0_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_globals_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(globals_0_pass, boost::unit_test::data::xrange(1,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_globals_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_globals_17 = base_dir + "/globals.17.wasm"; +std::vector wasm_globals_17= read_wasm(wasm_str_globals_17.c_str()); + +BOOST_DATA_TEST_CASE(globals_17_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_globals_17); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/i32.cpp b/wasm-spec-tests/generated-tests/i32.cpp new file mode 100644 index 0000000000..e3123b97d9 --- /dev/null +++ b/wasm-spec-tests/generated-tests/i32.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_i32_0 = base_dir + "/i32.0.wasm"; +std::vector wasm_i32_0= read_wasm(wasm_str_i32_0.c_str()); + +BOOST_DATA_TEST_CASE(i32_0_check_throw, boost::unit_test::data::xrange(0,9), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_i32_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(i32_0_pass, boost::unit_test::data::xrange(9,13), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_i32_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/i64.cpp b/wasm-spec-tests/generated-tests/i64.cpp new file mode 100644 index 0000000000..fcb5b6f187 --- /dev/null +++ b/wasm-spec-tests/generated-tests/i64.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_i64_0 = base_dir + "/i64.0.wasm"; +std::vector wasm_i64_0= read_wasm(wasm_str_i64_0.c_str()); + +BOOST_DATA_TEST_CASE(i64_0_check_throw, boost::unit_test::data::xrange(0,9), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_i64_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(i64_0_pass, boost::unit_test::data::xrange(9,13), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_i64_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/if.cpp b/wasm-spec-tests/generated-tests/if.cpp new file mode 100644 index 0000000000..43fc93796f --- /dev/null +++ b/wasm-spec-tests/generated-tests/if.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_if_0 = base_dir + "/if.0.wasm"; +std::vector wasm_if_0= read_wasm(wasm_str_if_0.c_str()); + +BOOST_DATA_TEST_CASE(if_0_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_if_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(if_0_pass, boost::unit_test::data::xrange(1,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_if_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/int_exprs.cpp b/wasm-spec-tests/generated-tests/int_exprs.cpp new file mode 100644 index 0000000000..baae9393a3 --- /dev/null +++ b/wasm-spec-tests/generated-tests/int_exprs.cpp @@ -0,0 +1,396 @@ +#include + +const string wasm_str_int_exprs_0 = base_dir + "/int_exprs.0.wasm"; +std::vector wasm_int_exprs_0= read_wasm(wasm_str_int_exprs_0.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_1 = base_dir + "/int_exprs.1.wasm"; +std::vector wasm_int_exprs_1= read_wasm(wasm_str_int_exprs_1.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_1_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_10 = base_dir + "/int_exprs.10.wasm"; +std::vector wasm_int_exprs_10= read_wasm(wasm_str_int_exprs_10.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_10_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_10); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_11 = base_dir + "/int_exprs.11.wasm"; +std::vector wasm_int_exprs_11= read_wasm(wasm_str_int_exprs_11.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_11_check_throw, boost::unit_test::data::xrange(0,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_11); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_12 = base_dir + "/int_exprs.12.wasm"; +std::vector wasm_int_exprs_12= read_wasm(wasm_str_int_exprs_12.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_12_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_12); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_13 = base_dir + "/int_exprs.13.wasm"; +std::vector wasm_int_exprs_13= read_wasm(wasm_str_int_exprs_13.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_13_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_13); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_14 = base_dir + "/int_exprs.14.wasm"; +std::vector wasm_int_exprs_14= read_wasm(wasm_str_int_exprs_14.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_14_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_14); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_15 = base_dir + "/int_exprs.15.wasm"; +std::vector wasm_int_exprs_15= read_wasm(wasm_str_int_exprs_15.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_15_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_15); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_16 = base_dir + "/int_exprs.16.wasm"; +std::vector wasm_int_exprs_16= read_wasm(wasm_str_int_exprs_16.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_16_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_16); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_17 = base_dir + "/int_exprs.17.wasm"; +std::vector wasm_int_exprs_17= read_wasm(wasm_str_int_exprs_17.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_17_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_17); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_18 = base_dir + "/int_exprs.18.wasm"; +std::vector wasm_int_exprs_18= read_wasm(wasm_str_int_exprs_18.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_18_check_throw, boost::unit_test::data::xrange(0,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_18); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_2 = base_dir + "/int_exprs.2.wasm"; +std::vector wasm_int_exprs_2= read_wasm(wasm_str_int_exprs_2.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_2_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_3 = base_dir + "/int_exprs.3.wasm"; +std::vector wasm_int_exprs_3= read_wasm(wasm_str_int_exprs_3.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_3_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_4 = base_dir + "/int_exprs.4.wasm"; +std::vector wasm_int_exprs_4= read_wasm(wasm_str_int_exprs_4.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_4_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_5 = base_dir + "/int_exprs.5.wasm"; +std::vector wasm_int_exprs_5= read_wasm(wasm_str_int_exprs_5.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_5_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_6 = base_dir + "/int_exprs.6.wasm"; +std::vector wasm_int_exprs_6= read_wasm(wasm_str_int_exprs_6.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_6_check_throw, boost::unit_test::data::xrange(0,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_6); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_7 = base_dir + "/int_exprs.7.wasm"; +std::vector wasm_int_exprs_7= read_wasm(wasm_str_int_exprs_7.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_7_check_throw, boost::unit_test::data::xrange(0,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_7); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_8 = base_dir + "/int_exprs.8.wasm"; +std::vector wasm_int_exprs_8= read_wasm(wasm_str_int_exprs_8.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_8_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_int_exprs_9 = base_dir + "/int_exprs.9.wasm"; +std::vector wasm_int_exprs_9= read_wasm(wasm_str_int_exprs_9.c_str()); + +BOOST_DATA_TEST_CASE(int_exprs_9_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_exprs_9); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/int_literals.cpp b/wasm-spec-tests/generated-tests/int_literals.cpp new file mode 100644 index 0000000000..112fed9815 --- /dev/null +++ b/wasm-spec-tests/generated-tests/int_literals.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_int_literals_0 = base_dir + "/int_literals.0.wasm"; +std::vector wasm_int_literals_0= read_wasm(wasm_str_int_literals_0.c_str()); + +BOOST_DATA_TEST_CASE(int_literals_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_int_literals_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/labels.cpp b/wasm-spec-tests/generated-tests/labels.cpp new file mode 100644 index 0000000000..904ebec888 --- /dev/null +++ b/wasm-spec-tests/generated-tests/labels.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_labels_0 = base_dir + "/labels.0.wasm"; +std::vector wasm_labels_0= read_wasm(wasm_str_labels_0.c_str()); + +BOOST_DATA_TEST_CASE(labels_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_labels_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/left-to-right.cpp b/wasm-spec-tests/generated-tests/left-to-right.cpp new file mode 100644 index 0000000000..1bc9d23c4c --- /dev/null +++ b/wasm-spec-tests/generated-tests/left-to-right.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_left_to_right_0 = base_dir + "/left-to-right.0.wasm"; +std::vector wasm_left_to_right_0= read_wasm(wasm_str_left_to_right_0.c_str()); + +BOOST_DATA_TEST_CASE(left_to_right_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_left_to_right_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/load.cpp b/wasm-spec-tests/generated-tests/load.cpp new file mode 100644 index 0000000000..a5f8b44a56 --- /dev/null +++ b/wasm-spec-tests/generated-tests/load.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_load_0 = base_dir + "/load.0.wasm"; +std::vector wasm_load_0= read_wasm(wasm_str_load_0.c_str()); + +BOOST_DATA_TEST_CASE(load_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_load_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/local_get.cpp b/wasm-spec-tests/generated-tests/local_get.cpp new file mode 100644 index 0000000000..ddcad155f8 --- /dev/null +++ b/wasm-spec-tests/generated-tests/local_get.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_local_get_0 = base_dir + "/local_get.0.wasm"; +std::vector wasm_local_get_0= read_wasm(wasm_str_local_get_0.c_str()); + +BOOST_DATA_TEST_CASE(local_get_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_local_get_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/local_set.cpp b/wasm-spec-tests/generated-tests/local_set.cpp new file mode 100644 index 0000000000..e6f097884d --- /dev/null +++ b/wasm-spec-tests/generated-tests/local_set.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_local_set_0 = base_dir + "/local_set.0.wasm"; +std::vector wasm_local_set_0= read_wasm(wasm_str_local_set_0.c_str()); + +BOOST_DATA_TEST_CASE(local_set_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_local_set_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/local_tee.cpp b/wasm-spec-tests/generated-tests/local_tee.cpp new file mode 100644 index 0000000000..51c16a408d --- /dev/null +++ b/wasm-spec-tests/generated-tests/local_tee.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_local_tee_0 = base_dir + "/local_tee.0.wasm"; +std::vector wasm_local_tee_0= read_wasm(wasm_str_local_tee_0.c_str()); + +BOOST_DATA_TEST_CASE(local_tee_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_local_tee_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/loop.cpp b/wasm-spec-tests/generated-tests/loop.cpp new file mode 100644 index 0000000000..f3a317f7b5 --- /dev/null +++ b/wasm-spec-tests/generated-tests/loop.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_loop_0 = base_dir + "/loop.0.wasm"; +std::vector wasm_loop_0= read_wasm(wasm_str_loop_0.c_str()); + +BOOST_DATA_TEST_CASE(loop_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_loop_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/main.cpp b/wasm-spec-tests/generated-tests/main.cpp new file mode 100644 index 0000000000..4392c268cb --- /dev/null +++ b/wasm-spec-tests/generated-tests/main.cpp @@ -0,0 +1,41 @@ +/** + * @file + * @copyright defined in eos/LICENSE + */ +#include + +#include + +#include + +#include + +#include + +void translate_fc_exception(const fc::exception &e) { + std::cerr << "\033[33m" << e.to_detail_string() << "\033[0m" << std::endl; + BOOST_TEST_FAIL("Caught Unexpected Exception"); +} + +boost::unit_test::test_suite* init_unit_test_suite(int argc, char* argv[]) { + // Turn off blockchain logging if no --verbose parameter is not added + // To have verbose enabled, call "tests/chain_test -- --verbose" + bool is_verbose = false; + std::string verbose_arg = "--verbose"; + for (int i = 0; i < argc; i++) { + if (verbose_arg == argv[i]) { + is_verbose = true; + break; + } + } + if(is_verbose) { + fc::logger::get(DEFAULT_LOGGER).set_log_level(fc::log_level::debug); + } else { + fc::logger::get(DEFAULT_LOGGER).set_log_level(fc::log_level::off); + } + + // Register fc::exception translator + boost::unit_test::unit_test_monitor.register_exception_translator(&translate_fc_exception); + + return nullptr; +} diff --git a/wasm-spec-tests/generated-tests/memory.cpp b/wasm-spec-tests/generated-tests/memory.cpp new file mode 100644 index 0000000000..37ff3dddf0 --- /dev/null +++ b/wasm-spec-tests/generated-tests/memory.cpp @@ -0,0 +1,167 @@ +#include + +const string wasm_str_memory_0 = base_dir + "/memory.0.wasm"; +std::vector wasm_memory_0= read_wasm(wasm_str_memory_0.c_str()); + +BOOST_DATA_TEST_CASE(memory_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_1 = base_dir + "/memory.1.wasm"; +std::vector wasm_memory_1= read_wasm(wasm_str_memory_1.c_str()); + +BOOST_DATA_TEST_CASE(memory_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_2 = base_dir + "/memory.2.wasm"; +std::vector wasm_memory_2= read_wasm(wasm_str_memory_2.c_str()); + +BOOST_DATA_TEST_CASE(memory_2_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_25 = base_dir + "/memory.25.wasm"; +std::vector wasm_memory_25= read_wasm(wasm_str_memory_25.c_str()); + +BOOST_DATA_TEST_CASE(memory_25_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_25); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_3 = base_dir + "/memory.3.wasm"; +std::vector wasm_memory_3= read_wasm(wasm_str_memory_3.c_str()); + +BOOST_DATA_TEST_CASE(memory_3_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_6 = base_dir + "/memory.6.wasm"; +std::vector wasm_memory_6= read_wasm(wasm_str_memory_6.c_str()); + +BOOST_DATA_TEST_CASE(memory_6_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_6); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_7 = base_dir + "/memory.7.wasm"; +std::vector wasm_memory_7= read_wasm(wasm_str_memory_7.c_str()); + +BOOST_DATA_TEST_CASE(memory_7_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_7); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_8 = base_dir + "/memory.8.wasm"; +std::vector wasm_memory_8= read_wasm(wasm_str_memory_8.c_str()); + +BOOST_DATA_TEST_CASE(memory_8_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_8); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/memory_grow.cpp b/wasm-spec-tests/generated-tests/memory_grow.cpp new file mode 100644 index 0000000000..c7d97bdec8 --- /dev/null +++ b/wasm-spec-tests/generated-tests/memory_grow.cpp @@ -0,0 +1,119 @@ +#include + +const string wasm_str_memory_grow_0 = base_dir + "/memory_grow.0.wasm"; +std::vector wasm_memory_grow_0= read_wasm(wasm_str_memory_grow_0.c_str()); + +BOOST_DATA_TEST_CASE(memory_grow_0_check_throw, boost::unit_test::data::xrange(0,6), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_grow_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(memory_grow_0_pass, boost::unit_test::data::xrange(6,7), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_grow_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_grow_1 = base_dir + "/memory_grow.1.wasm"; +std::vector wasm_memory_grow_1= read_wasm(wasm_str_memory_grow_1.c_str()); + +BOOST_DATA_TEST_CASE(memory_grow_1_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_grow_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_grow_2 = base_dir + "/memory_grow.2.wasm"; +std::vector wasm_memory_grow_2= read_wasm(wasm_str_memory_grow_2.c_str()); + +BOOST_DATA_TEST_CASE(memory_grow_2_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_grow_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_grow_4 = base_dir + "/memory_grow.4.wasm"; +std::vector wasm_memory_grow_4= read_wasm(wasm_str_memory_grow_4.c_str()); + +BOOST_DATA_TEST_CASE(memory_grow_4_check_throw, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_grow_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(memory_grow_4_pass, boost::unit_test::data::xrange(1,2), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_grow_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/memory_redundancy.cpp b/wasm-spec-tests/generated-tests/memory_redundancy.cpp new file mode 100644 index 0000000000..c91ccb118d --- /dev/null +++ b/wasm-spec-tests/generated-tests/memory_redundancy.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_memory_redundancy_0 = base_dir + "/memory_redundancy.0.wasm"; +std::vector wasm_memory_redundancy_0= read_wasm(wasm_str_memory_redundancy_0.c_str()); + +BOOST_DATA_TEST_CASE(memory_redundancy_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_redundancy_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/memory_size.cpp b/wasm-spec-tests/generated-tests/memory_size.cpp new file mode 100644 index 0000000000..b17dfc37b1 --- /dev/null +++ b/wasm-spec-tests/generated-tests/memory_size.cpp @@ -0,0 +1,85 @@ +#include + +const string wasm_str_memory_size_0 = base_dir + "/memory_size.0.wasm"; +std::vector wasm_memory_size_0= read_wasm(wasm_str_memory_size_0.c_str()); + +BOOST_DATA_TEST_CASE(memory_size_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_size_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_size_1 = base_dir + "/memory_size.1.wasm"; +std::vector wasm_memory_size_1= read_wasm(wasm_str_memory_size_1.c_str()); + +BOOST_DATA_TEST_CASE(memory_size_1_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_size_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_size_2 = base_dir + "/memory_size.2.wasm"; +std::vector wasm_memory_size_2= read_wasm(wasm_str_memory_size_2.c_str()); + +BOOST_DATA_TEST_CASE(memory_size_2_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_size_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_size_3 = base_dir + "/memory_size.3.wasm"; +std::vector wasm_memory_size_3= read_wasm(wasm_str_memory_size_3.c_str()); + +BOOST_DATA_TEST_CASE(memory_size_3_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_size_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/memory_trap.cpp b/wasm-spec-tests/generated-tests/memory_trap.cpp new file mode 100644 index 0000000000..ee8c62abde --- /dev/null +++ b/wasm-spec-tests/generated-tests/memory_trap.cpp @@ -0,0 +1,77 @@ +#include + +const string wasm_str_memory_trap_0 = base_dir + "/memory_trap.0.wasm"; +std::vector wasm_memory_trap_0= read_wasm(wasm_str_memory_trap_0.c_str()); + +BOOST_DATA_TEST_CASE(memory_trap_0_check_throw, boost::unit_test::data::xrange(0,10), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_trap_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(memory_trap_0_pass, boost::unit_test::data::xrange(10,11), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_trap_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_memory_trap_1 = base_dir + "/memory_trap.1.wasm"; +std::vector wasm_memory_trap_1= read_wasm(wasm_str_memory_trap_1.c_str()); + +BOOST_DATA_TEST_CASE(memory_trap_1_check_throw, boost::unit_test::data::xrange(0,156), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_trap_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(memory_trap_1_pass, boost::unit_test::data::xrange(156,157), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_memory_trap_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/nop.cpp b/wasm-spec-tests/generated-tests/nop.cpp new file mode 100644 index 0000000000..1c2061f06f --- /dev/null +++ b/wasm-spec-tests/generated-tests/nop.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_nop_0 = base_dir + "/nop.0.wasm"; +std::vector wasm_nop_0= read_wasm(wasm_str_nop_0.c_str()); + +BOOST_DATA_TEST_CASE(nop_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_nop_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/return.cpp b/wasm-spec-tests/generated-tests/return.cpp new file mode 100644 index 0000000000..24d8f79d5c --- /dev/null +++ b/wasm-spec-tests/generated-tests/return.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_return_0 = base_dir + "/return.0.wasm"; +std::vector wasm_return_0= read_wasm(wasm_str_return_0.c_str()); + +BOOST_DATA_TEST_CASE(return_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_return_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/select.cpp b/wasm-spec-tests/generated-tests/select.cpp new file mode 100644 index 0000000000..50dcb21f35 --- /dev/null +++ b/wasm-spec-tests/generated-tests/select.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_select_0 = base_dir + "/select.0.wasm"; +std::vector wasm_select_0= read_wasm(wasm_str_select_0.c_str()); + +BOOST_DATA_TEST_CASE(select_0_check_throw, boost::unit_test::data::xrange(0,6), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_select_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(select_0_pass, boost::unit_test::data::xrange(6,7), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_select_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/stack.cpp b/wasm-spec-tests/generated-tests/stack.cpp new file mode 100644 index 0000000000..2c1f0a38cf --- /dev/null +++ b/wasm-spec-tests/generated-tests/stack.cpp @@ -0,0 +1,43 @@ +#include + +const string wasm_str_stack_0 = base_dir + "/stack.0.wasm"; +std::vector wasm_stack_0= read_wasm(wasm_str_stack_0.c_str()); + +BOOST_DATA_TEST_CASE(stack_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_stack_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_stack_1 = base_dir + "/stack.1.wasm"; +std::vector wasm_stack_1= read_wasm(wasm_str_stack_1.c_str()); + +BOOST_DATA_TEST_CASE(stack_1_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_stack_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/start.cpp b/wasm-spec-tests/generated-tests/start.cpp new file mode 100644 index 0000000000..f25ce7f4a5 --- /dev/null +++ b/wasm-spec-tests/generated-tests/start.cpp @@ -0,0 +1,85 @@ +#include + +const string wasm_str_start_3 = base_dir + "/start.3.wasm"; +std::vector wasm_start_3= read_wasm(wasm_str_start_3.c_str()); + +BOOST_DATA_TEST_CASE(start_3_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_start_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_start_4 = base_dir + "/start.4.wasm"; +std::vector wasm_start_4= read_wasm(wasm_str_start_4.c_str()); + +BOOST_DATA_TEST_CASE(start_4_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_start_4); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_start_5 = base_dir + "/start.5.wasm"; +std::vector wasm_start_5= read_wasm(wasm_str_start_5.c_str()); + +BOOST_DATA_TEST_CASE(start_5_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_start_5); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_start_6 = base_dir + "/start.6.wasm"; +std::vector wasm_start_6= read_wasm(wasm_str_start_6.c_str()); + +BOOST_DATA_TEST_CASE(start_6_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_start_6); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/store.cpp b/wasm-spec-tests/generated-tests/store.cpp new file mode 100644 index 0000000000..4bdd18ee3d --- /dev/null +++ b/wasm-spec-tests/generated-tests/store.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_store_0 = base_dir + "/store.0.wasm"; +std::vector wasm_store_0= read_wasm(wasm_str_store_0.c_str()); + +BOOST_DATA_TEST_CASE(store_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_store_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/switch.cpp b/wasm-spec-tests/generated-tests/switch.cpp new file mode 100644 index 0000000000..d31400517d --- /dev/null +++ b/wasm-spec-tests/generated-tests/switch.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_switch_0 = base_dir + "/switch.0.wasm"; +std::vector wasm_switch_0= read_wasm(wasm_str_switch_0.c_str()); + +BOOST_DATA_TEST_CASE(switch_0_pass, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_switch_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/traps.cpp b/wasm-spec-tests/generated-tests/traps.cpp new file mode 100644 index 0000000000..b91cbf0443 --- /dev/null +++ b/wasm-spec-tests/generated-tests/traps.cpp @@ -0,0 +1,81 @@ +#include + +const string wasm_str_traps_0 = base_dir + "/traps.0.wasm"; +std::vector wasm_traps_0= read_wasm(wasm_str_traps_0.c_str()); + +BOOST_DATA_TEST_CASE(traps_0_check_throw, boost::unit_test::data::xrange(0,6), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_traps_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_traps_1 = base_dir + "/traps.1.wasm"; +std::vector wasm_traps_1= read_wasm(wasm_str_traps_1.c_str()); + +BOOST_DATA_TEST_CASE(traps_1_check_throw, boost::unit_test::data::xrange(0,4), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_traps_1); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_traps_2 = base_dir + "/traps.2.wasm"; +std::vector wasm_traps_2= read_wasm(wasm_str_traps_2.c_str()); + +BOOST_DATA_TEST_CASE(traps_2_check_throw, boost::unit_test::data::xrange(0,8), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_traps_2); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +const string wasm_str_traps_3 = base_dir + "/traps.3.wasm"; +std::vector wasm_traps_3= read_wasm(wasm_str_traps_3.c_str()); + +BOOST_DATA_TEST_CASE(traps_3_check_throw, boost::unit_test::data::xrange(0,14), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_traps_3); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/type.cpp b/wasm-spec-tests/generated-tests/type.cpp new file mode 100644 index 0000000000..0f21400610 --- /dev/null +++ b/wasm-spec-tests/generated-tests/type.cpp @@ -0,0 +1,22 @@ +#include + +const string wasm_str_type_0 = base_dir + "/type.0.wasm"; +std::vector wasm_type_0= read_wasm(wasm_str_type_0.c_str()); + +BOOST_DATA_TEST_CASE(type_0_module, boost::unit_test::data::xrange(0,1), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_type_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/unreachable.cpp b/wasm-spec-tests/generated-tests/unreachable.cpp new file mode 100644 index 0000000000..81a1edd7c3 --- /dev/null +++ b/wasm-spec-tests/generated-tests/unreachable.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_unreachable_0 = base_dir + "/unreachable.0.wasm"; +std::vector wasm_unreachable_0= read_wasm(wasm_str_unreachable_0.c_str()); + +BOOST_DATA_TEST_CASE(unreachable_0_check_throw, boost::unit_test::data::xrange(0,57), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_unreachable_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(unreachable_0_pass, boost::unit_test::data::xrange(57,58), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_unreachable_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/unwind.cpp b/wasm-spec-tests/generated-tests/unwind.cpp new file mode 100644 index 0000000000..30fdf6ff06 --- /dev/null +++ b/wasm-spec-tests/generated-tests/unwind.cpp @@ -0,0 +1,39 @@ +#include + +const string wasm_str_unwind_0 = base_dir + "/unwind.0.wasm"; +std::vector wasm_unwind_0= read_wasm(wasm_str_unwind_0.c_str()); + +BOOST_DATA_TEST_CASE(unwind_0_check_throw, boost::unit_test::data::xrange(0,8), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_unwind_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + BOOST_CHECK_THROW(push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()), wasm_execution_error); + tester.produce_block(); +} FC_LOG_AND_RETHROW() } + +BOOST_DATA_TEST_CASE(unwind_0_pass, boost::unit_test::data::xrange(8,9), index) { try { + TESTER tester; + tester.produce_block(); + tester.create_account( "wasmtest"_n ); + tester.produce_block(); + tester.set_code("wasmtest"_n, wasm_unwind_0); + tester.produce_block(); + + action test; + test.account = "wasmtest"_n; + test.name = account_name((uint64_t)index); + test.authorization = {{"wasmtest"_n, config::active_name}}; + + push_action(tester, std::move(test), "wasmtest"_n.to_uint64_t()); + tester.produce_block(); + BOOST_REQUIRE_EQUAL( tester.validate(), true ); +} FC_LOG_AND_RETHROW() } diff --git a/wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in b/wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in new file mode 100644 index 0000000000..2902407575 --- /dev/null +++ b/wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in @@ -0,0 +1,32 @@ +#pragma once + +#include +#include +#include +#include + +#ifdef NON_VALIDATING_TEST +#define TESTER tester +#else +#define TESTER validating_tester +#endif + +using namespace eosio; +using namespace eosio::testing; + +inline void push_action(TESTER& tester, action&& act, uint64_t authorizer) { + signed_transaction trx; + if (authorizer) { + act.authorization = vector{{account_name(authorizer), config::active_name}}; + } + trx.actions.emplace_back(std::move(act)); + tester.set_transaction_headers(trx); + if (authorizer) { + trx.sign(tester.get_private_key(account_name(authorizer), "active"), tester.control->get_chain_id()); + } + tester.push_transaction(trx); + tester.produce_block(); +} + +const string base_dir = "${SPEC_TEST_WASM_DIR}"; + diff --git a/wasm-spec-tests/generated-tests/wasms/address.0.wasm b/wasm-spec-tests/generated-tests/wasms/address.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4858949745651185cf64c882991a837ee29a42db GIT binary patch literal 8010 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 F{{i)`R*C=s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/address.4.wasm b/wasm-spec-tests/generated-tests/wasms/address.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..18bf2ff4ad8991da3dabf7d72d78c22e0a56a30d GIT binary patch literal 1821 zcmai!O;8*~6vtn8@666_FYG`PLde&9ut}B>5*C(S21wWjl0ZI54pwgLYS09N5J_2D zMKP(;Di3<_=+%?u)r;16Fwv{tyyv7|wMso%g|BC4GhR{-RrK_~e{cT%df#hk?Q9AF z5M{3^!w{M(3_}q%0h)qmA{4t#wYRsIys{=qsE4tKj35>u`PsflmOxOsZf}w&p?M@KKTCSkX_Dtwd(3yTU+-l;B;Qc z!R@?Gz)PSCUPqmToXcUax9&sUX>D&mdLR7!kGWz7e5GqbghOEbjX^L_lLZ3^Wmzao zFxhqU-s3?QKWtdFCZF;+$KxjrEkS2l8&Sy!ol&%PA(Qo9tz&L~|2uy``|M_Z+gHSz zpBpIZE-OGh%_lR_nSJBVIDESHgvFlRmGLNEG0I&&Gv;2kp6dU{W%xV@%%G(U3~AtL!j^DF;!gE+`}4{`8Npc*!~K_x6jbP7*dqtoUWjyQv-@eCUc za=X^-a71VEtYt^c-^`xF5j+>OSsG<_G*Dxf9i#JjKB5bF!LnoKqvt>s z9K%Y?dNj`Lc%b<6!>UXZI1y15tCpQKpD|m*Nvy?ej_S4w0t_rWZN6l7 z2B&d`GqlAyi?f{JMUJ=_sD2yKPnYmgL~}T2BO2ygjxg9j!(X4}4Ck4h50r0NpB8W- zqD5S^>}B&4vsdskUWwT(U1j!apghZZw1i6$E#tCfubCIjUdL;AJ!U<+!R(Ddfn|Yi z;?0O|;VpDpbQ^Ee3a%jEB(_xVFnDL3?&94N6!jZI+ai|6C&deD!&YsHdyX8;pfe3c z9z;!gm>Gp4xkhjuyO@1Uo@}7k1qLXGnX>fS73_oNPiYR)>s-bK>+!KrDwKPUHBtuI zL1AWt4V)7A5*>s(pPhrE&d1`QtaHYW&Dfn+ZMWCBUED7y*S3_6_8;cDGaw{iEWR!% z?H3AC`&|X0{cg?M%46Qou$|^_rkl}!$s%uB55#TvpMQUbBA)%jH!1g^?pf_zp!jC% z;Ula7*nUg(@wPtBI`>wpPqg(3*13;Tz1r5RtaGEJ`ea+5WS!d~)hlhi#yXdNswcj6 z*1616J@K7lol82^6W@S!E??c-$t&@#jPU|jX}XXYS8T>ylIcR?T(K#0{iO?ub;ah) Mw_m!Dcvq_MFL)qY*8l(j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.0.wasm b/wasm-spec-tests/generated-tests/wasms/align.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8b843b39c054a69db1082f10ab63691eafaef2f3 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@cD-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&VaxvBb literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.1.wasm b/wasm-spec-tests/generated-tests/wasms/align.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d4268ee32702c151b6b467f5b4b50bd29b4eb943 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@lG-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&V>oL~= literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.10.wasm b/wasm-spec-tests/generated-tests/wasms/align.10.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f0e6f61bcbdb82977790205b3347fb0b5a1b0e52 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{fFlHrHw7gHSK$U6jY&oI z=D(TwSPfeOKv%BgoY6_nnQ{kobV}nmLIX#Z{`qa%?}o?S{c0Hc*8^};Zrg8%{s0nZ znZ+7oX-`B}2;|NsQ#$^_XQc0c6ce(m{r>3#uKFQsP>XMf@-BPQs)%T2<*$wT?dcInKPVNSEH!0r&&aqcPzC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.106.wasm b/wasm-spec-tests/generated-tests/wasms/align.106.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1a114063e5381248ea238b20ea09854eefe0cd4f GIT binary patch literal 6340 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.12.wasm b/wasm-spec-tests/generated-tests/wasms/align.12.wasm new file mode 100644 index 0000000000000000000000000000000000000000..557a7bb92c36af2766182e0bfb95eb0d8bdc20f0 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{L>#~_$#M~#!a^j31RNn~yeTLtxC%GmXiO@q zH~-Dd$7U9gG89by@ZP`0A2aS|rA(W*+1s&(|i&vE8`MY{B+4!|GGa52^Z literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.13.wasm b/wasm-spec-tests/generated-tests/wasms/align.13.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4ea76e7e39f1119048ffe6a504a2fdcce6c0d223 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{M54D#vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{bDVi!kuJTd1MmmUVKLYM literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.14.wasm b/wasm-spec-tests/generated-tests/wasms/align.14.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9a59426e7aeb2ae7ca8f6271769847189fe24b95 GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$J?NvRouiVIdMi0*(+g-V~G+oP`r`G$s|* zoBw9!V?FE$0A0I|b4DjQXUZMW(K(Id2n`%r`scT4zaJj=tMxGSuSejl+^*jZ{ShS2 zGK)3F(t(Jq5XfChrgZv+&q&|@C`z*H!{O-zuKFQsP>XMf@(ohGogty&X+pq)rwc|Z zHtGFkrt))nwhf<@cgnA&XZTVd65Rs+L2RZ`v?odm(F6%*8*Q+2)EsO;D_06?rB-k& ulZ5DWbPbze7i?m2k2ncMn6#p`u?%Hxw5rmhY7>3%b6j{|kuJTd1Mmk93Nj7= literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.15.wasm b/wasm-spec-tests/generated-tests/wasms/align.15.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9e3687e68ff5cd9e6e9d7c79e1436e65b2a840db GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$I|&vRouiVIdMi0*(+g-V~G+oP`r`G$s|* zoBw9!V?FE$0A0I|b4DjQXUZMW(K(Id2n`%r`scT4zaJj=tMxGSuSejl+^*jZ{ShS2 zGK)3F(t(Jq5XfChrgZv+&q&|@C`z*H!{O-zuKFQsP>XMf@(ohGogty&X+pq)rwc|Z zHtGFkrt))nwhf<@cgnA&XZTVd65SH~gV;=?XitJx;?w5QX2&?5<;PBwQgHq}`ArC$LMhTm-wY5D6gxM+h2k3Q7vj!U;GUlZxtl zKQj;gxFY~`?K;jGo#dP;cR)vHH%$}NaAX;t-{!-9eB9sn<2bw?fpg?`!)_doAaRyi ztTC1jL}Z0P?ou+P(=U8R`u;~zlI;(Nrw_R5hpa&@z9GstNcDDsgoft{0V|%b7^&E# z_m_o+pX+nl@JV^A{91d4FZCf&qv}Cyrb%=sN(#{g31%B@uuIe&Y(Ohl3TmZRa4WNf s=v2CfO|UCAvA9E=g(A#a(b-srvNk$Z=~133;+NC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.17.wasm b/wasm-spec-tests/generated-tests/wasms/align.17.wasm new file mode 100644 index 0000000000000000000000000000000000000000..de1526f98657c906a17ebf1709e2f4d6fe5bfb73 GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$JkNvbhLOVIdMi0*(+g-V~G+oP`r`G$s|* zoBw9!V?FE$0A0I|b4DjQXUZMW(K(Id2n`%r`scT4zaJj=_v>NkUys09xm~{-`Xfl3 zWfp6Ur2`RJA&|S2OzHFspOL=*QIurYhr`ncT=hfNpcdZ{QG72+fmVbY4$#xj(((W*+1s!jC4&vD^>MY{B+4!|D|bTSbD literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.18.wasm b/wasm-spec-tests/generated-tests/wasms/align.18.wasm new file mode 100644 index 0000000000000000000000000000000000000000..21ba9392a0505adbfcb51681f343844773028f82 GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$K9-HW$GuEJQ*`z!8GRn}U*pvv2~A#-yTp z^WV&TtcM)|pljE0&gdlPOt}L(I;U|Qp@Aby|NJ)X_rv4k&9Bx9fL9e*}rM z%wmnPbRZ%t1ag;>DV=`dGt&1zijwU5aCrKFtA5BD)Z!bWe1lYPXGmyxnh>zy>4K4p zO?rQssr+1?ZNn$!o$_nx8NSqq72Oj2gV;=?Xit3%b6j{|kuJTd1MmkBV=@x} literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.19.wasm b/wasm-spec-tests/generated-tests/wasms/align.19.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9dee1345bddebbebd69bc925e02ccea6d06967e3 GIT binary patch literal 322 zcmYL>Jx;?w5QX2&?5<;PBwQgHq}`ArC$Kxn<{~(Sg-8eqI6}~PQ&3WH7EZv?m{e5X z`dKmiGBXEw~uHOy)5hTts zi#5j5frzXS$X!aNbozzQNZHTG<;pg(4HhfavDZiGU;Y)p3(XFZnv6)8EohT_p6C{{zw873%bFcxeTq&rPTEVSM t5~5S-8aBZ$*u-LmI0;3Vw4$@I3}tO}s?wus6MgV=TzFrRmfq9>_yZAAG8F&- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.2.wasm b/wasm-spec-tests/generated-tests/wasms/align.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6e6e1f94c7969874ce8e4b2e7e788a609c22a6b5 GIT binary patch literal 288 zcmYL>u};G<6h-fQ&vrr`2~P+iA=#xvC&px?Uib}?Ap24ffzF-z7(h5#&O_c5s-EN79nyUzpHCJm!EVl9U zZJFiw=4@*|WN XDz}TQift%;xx%Hj3(AjHIS>2+I0G&v literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.20.wasm b/wasm-spec-tests/generated-tests/wasms/align.20.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5b889d09162297a5ecfcc618c41a964f1a1835bb GIT binary patch literal 322 zcmYL>Jx;?w5QX2&?5<;PBwR%_NV_3LPT-Vea}n&qLL`I)93g1DDJUs83n$=cOe(5x z-p@RA!=3=pjcYk)w32hC+yX6K)Hse%!I7nZew+4(;qh?a4MYEW0xp)@_xqtgfy7y6 zvBp?B5|I@GxtU~2=U@1Y^!<;bB-!zS1zn^k-(o(gJKKKQ$yst<@Z|VU20SF;2rk5JmsY?5-29C0rpIq}`ArC$Q}14owr`K{`A!{hFLH4Odh0XQkQ?YBdJ0Ex5A zVvVu1Cn75Za_5pM9e?37()T}#DcRM2|MUS@{*X1O#WzIx3aQ@AkkD|I5U}8C!AQkA zy}!&+wNfj% vl}SQ$I=Y5UunRV^xJ8_VB1~G*<~R-0+Gtg&N98*D;O98=z9e0GQwQJ=;WaYU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.22.wasm b/wasm-spec-tests/generated-tests/wasms/align.22.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8f44ef1053159eb8af4807ae269c9242319d3668 GIT binary patch literal 329 zcmYL^F-`+P3`M`~ncZY35>p`>q?wQ+C)gELGKhPyDOQMtkibR=nw=Ds6kLanBXIbC@dE{m3PMk_gI$}P~+Ne#mQ6&zW*r`Jih>mPP^tG@4E4#3GOw%xYx z4j?Hkvshy+?TN?=fr@jF;2rk5JmsY?5-VeBwQhcgtQw{q@%M-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{APgV;=?Xibz9q6rerCfZ=bDVi!kuJTd1MmmVRWaHC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.4.wasm b/wasm-spec-tests/generated-tests/wasms/align.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c490ef29d9a102130d2e415b7b4fa8b2cb9f824d GIT binary patch literal 321 zcmYL>Jx;?w5QX2&?5-VeBwQhcgtQw{tX0$kHFb-yM8zHN02zn zEY=uH2O_dUAa^O5(&-mIBYpp)n2=o`4o@F&)el*NT6{y4Z;|Tl3<(WS69N`IT`*Fy zN$)Q+H9wbUx8alWPWiR;3}5Pl)~@}7*i577Oq3L&2@=dU+F<9XIoN9M5 tgy{5i4Vz#WY+`YbScW2$t>|i;gh_35s?t)mi9Yx_F1)WuLvQK;`~k~;G1LG6 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.5.wasm b/wasm-spec-tests/generated-tests/wasms/align.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a640e38865c21a7e76abe8b729b2702daaeca9db GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@=P-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&XRx#QD literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.6.wasm b/wasm-spec-tests/generated-tests/wasms/align.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cf71f9ef39d2113a7af4cd8b07dfb8d9fa9a5b25 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@}S-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&X&oSEo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.7.wasm b/wasm-spec-tests/generated-tests/wasms/align.7.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5abc4e41bd1e673ff314c5d3477627a6fbcec448 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q^7V-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{APgV;=?Xibz9q6rerCfZ=bDVi!kuJTd1MmmWz%ktb literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.8.wasm b/wasm-spec-tests/generated-tests/wasms/align.8.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e70f7a7db194382c3527e7324c4f8bd46b912c43 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q(`z#vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{APgV;=?Xibz9q6rerCfZ=bDVi!kuJTd1MmmXIWgV< literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/align.9.wasm b/wasm-spec-tests/generated-tests/wasms/align.9.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fecab967171100a62ebbe7a384b936447cd6b444 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{U9gG89by@ZP`0A2aS|rA(W*+1s&(|i&vE8`MY{B+4!|GLDly;y literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fa8630cd032a4d5aa5d4c74d8758283d69cf1efa GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2jri4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te}?if#{d8T literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fa8630cd032a4d5aa5d4c74d8758283d69cf1efa GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2jri4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te}?if#{d8T literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a0c3621b51c869da3480020dd98f12fdf3d88baf GIT binary patch literal 329 zcmYL?u~Ne@5JdNMk{w%_!4*S!3MpJs+9eS`f>U^yBqTAhhk?dQK}o@9@ELp>G8C!a z?%v%V*8QFU&?0SA2xvHjK%oH|n%p>!|B6PaJLdNAI&Y8t=J>eo`}Q;dQj>DIr!EMoYvn$k+0BkvU^yBqTAhhk?dQK}o@9@ELp>G8C!a z?%v%V*8QFU&?0SA2xvHjK%oH|n%p>!|B6PaJLdNAI&Y8t=J>eo`}Q;dQj>DIr!EMoYvn$k+0BkvU^yBqTAhhk?dQK}o@9@ELp>G8C!a z?%v%V*8QFU&?0SA2xvHjK%oH|n%p>!|B6PaJLdNAI&Y8t=J>eo`}Q;dQj>DIr!EMoYvn$k+0Bkvk4V4 zH~-J*>!Ta?1c0tx%PFCiloF*DXlYX8I3f!UEdBG_qCX6ehx=|A`qvXMS#IC&hyDZ- zXPLzsW9djlRtV%SB~d*8!Y9Pga#We0%60JS7dZ94qga#We0%60JS7dZ94qk4V4 zH~-J*>!Ta?1c0tx%PFCiloF*DXlYX8I3f!UEdBG_qCX6ehx=|A`qvXMS#IC&hyDZ- zXPLzsW9djlRtV%SB~d*8!Y9PH8n$l>GW|c=~{^e#kl05*ng>L#f`*E!OZXL9yi7l99?y zdViUl{9K)F!zbgd@oN=;;w$ZC!P|fNUty~(YmD<3qOcG*YWzn!x mzhoE7JH&~WI%&ne$Ei+hXQwJ#sx~obSkOfX71=PjT7f^Cq%oTS literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm new file mode 100644 index 0000000000000000000000000000000000000000..afb47dbe8e1b22348b39543290694de9ec272241 GIT binary patch literal 313 zcmYL?Jx;?w5Jtb5*|i<7C0rtCW5jF4}` z`^z%P&&_NbJ}2HLer+7XJ&27oN!s=j)EgBwJ8#vlsAjc_RxT5$l{$f2DFS?!V%D%x nyJq9_JNQC#Em}$6{X!SDNvFy*RBpXfx1tN@N=i*3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm new file mode 100644 index 0000000000000000000000000000000000000000..14733ea6a204e25de1c33aeafa501805552b1e55 GIT binary patch literal 313 zcmYL?F;c@o3`M`BT|4n+2A2#p+K?hAuuHOB1gG#YB!mQH8n$l>GW|c=~{^e#kl05*ng>L#f`*E!OZXL9yi7l99?y zdViUl{9K)F!zbgd@oN=;;w$ZC!P|fNUty~(YmD<3qOcG*YWzn!x mzhoE7JH&~WI%&ne$Ei+hXQwJ#sx~obSkOfX71=PjT7f^Cq%oTS literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..87c5e5902e47678db0f22d33dca366d7f7a837f2 GIT binary patch literal 309 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+8Y1TGQX+-(FI+_U{ztwb+aHflAF$;Q8G~9}Llkci>fI6n4Oan*HCJm!$hYDB zWtrsXX0{EV6K@m0Hjd#Q#73GVU3&@Yjf$F`w`y0YS*@a#s|0GLPT*FG0H38YYuKn= lv+?;Ie4)7(t)z6n&_!+1t1>N>Tkq7ZaN%4@Y3NL?z#pBiFv|b{ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm new file mode 100644 index 0000000000000000000000000000000000000000..afb47dbe8e1b22348b39543290694de9ec272241 GIT binary patch literal 313 zcmYL?Jx;?w5Jtb5*|i<7C0rtCW5jF4}` z`^z%P&&_NbJ}2HLer+7XJ&27oN!s=j)EgBwJ8#vlsAjc_RxT5$l{$f2DFS?!V%D%x nyJq9_JNQC#Em}$6{X!SDNvFy*RBpXfx1tN@N=i*3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2066306c0bef97b415a332462af1cb835f474a81 GIT binary patch literal 313 zcmYL?Jx;?w5Jtb5*|lSDBwR+&%!U*>fnAc#MX(DCkq}~VgrM=Jprqg!9D}2=si@w} zo1YKecpw0DZCj2Jt;859wm?glZki^rXX&5c=KXPeJl=QX*uS2Di^>lDVeC&Jv4&ZU zu{02o6#`{9X2KROQaJx6AbkHLFUWSo@bm#&{*W=K#MMOcmO`~(BB17ZfMU(_H6!G^ z@cyz)@^f>sHJ=mj62CT%;U2_Bnj~F&3F?iCn!UGbS5&cDMI(y@YNSfwMrHv%OJ!EG nQM+d2^DX>LbDcGk(tV*tWzwrMEtNa()UD{sxsuY*nM#2_o1!tB literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d08f45ec3eb4bac5d04c37d8a07fe69ac1408f63 GIT binary patch literal 313 zcmYL?Jx;?w5Jtb5*|lSDBwR+&%!U*>fnAc#MX(DCkq}~VgrM=Jprqg!9D}2=si@w} zo1YKecpw0DZCj2Jt;859wm?glZki^rXX&5c=KXPeJl=QX*uS2Di^>lDVeC&Jv4&ZU zu{02o6#`{9X2LeQNa6eo7ZJYykr!mUVR-t0Eq}-uRN`u)cuS$$FA-4lJV3GL`I-^( zU3h<4Ci%I!*qYCYcZpvc$8Zl~BTbU7y#)0}Ma|w@wJWMvt)h`d0yR=4a3iw-pQSRZ o*{EH!@%a{hrn$}0(cj{JjfnAc#MX(DCkq}~VgrM=Jprqg!9D}2=si@w} zo1YKecpw0DZCj2Jt;859wm?glZki^rXX&5c=KXPeJl=QX*uS2Di^>lDVeC&Jv4&ZU zu{02o6#`{9X2KROQaJx6AbkHLFUWSo@bm#&{*W=K#MMOcmO`~(BB17ZfMU(_H6!G^ z@cyz)@^f>sHJ=mj62CT%;U2_Bnj~F&3F?iCn!UGbS5&cDMI(y@YNSfwMrHv%OJ!EG nQM+d2^DX>LbDcGk(tV*tWzwrMEtNa()UD{sxsuY*nM#2_o1!tB literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d08f45ec3eb4bac5d04c37d8a07fe69ac1408f63 GIT binary patch literal 313 zcmYL?Jx;?w5Jtb5*|lSDBwR+&%!U*>fnAc#MX(DCkq}~VgrM=Jprqg!9D}2=si@w} zo1YKecpw0DZCj2Jt;859wm?glZki^rXX&5c=KXPeJl=QX*uS2Di^>lDVeC&Jv4&ZU zu{02o6#`{9X2LeQNa6eo7ZJYykr!mUVR-t0Eq}-uRN`u)cuS$$FA-4lJV3GL`I-^( zU3h<4Ci%I!*qYCYcZpvc$8Zl~BTbU7y#)0}Ma|w@wJWMvt)h`d0yR=4a3iw-pQSRZ o*{EH!@%a{hrn$}0(cj{Jj!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+8Y1TGQX+-(FI+_U{ztwb+aHflAF$;Q8G~9}Llkci>fI6n4Oan*HCJm!$hYDB zWtrsXX0{EV6K@m0Hjd#Q#73GVU3&@Yjf$F`w`y0YS*@a#s|0GLPT*FG0H38YYuKn= lv+?;Ie4)7(t)z6n&_!+1t1>N>Tkq7ZaN%4@Y3NL?z#pBiFv|b{ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8d9da66fa955891c65141339773fd774db1d0f08 GIT binary patch literal 304 zcmYL?J5s|i5QhKVmHd)taK$iGQb^$w*d-Ac!7e-u2_^<-7-*~%loT9;V{kO&it5|_ z_VJ^iM*=|Cy5kVgNeF>L2XwS{%d&tS%kcbG4#)ZNc;CMIrl$|+;)j$%C8i+?H}KVA1CNGF4~v@1n&H#Ee}CCT z`MFzd!{^A`$giDYmf|7z`a14&dhKB0R zJk8IC?bs6ly0R_Dh*n~Z6kDLBb2m*B*t2v`uk-FOJ{<107uHmq~tX&bH=L;!Wb`#xdNz*hrJ4Z7)H+QBkw^R_zKEt5q~|nLv$H3Eapmz-Ot< pYBp-uY!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm b/wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b022fd486bbc4b8464aa62e4fb89589e1c5f2421 GIT binary patch literal 314 zcmYL?Jx;?w5Jtb5*|igIBwR(5vmu2~V3%aM2zFs15=;V)5H#KtloT9;V{kOq71f)0 z-~6B(2LeEvwHzZ_i7`@aftKcOnkJ-RqR5`5e|}r_$MNxa-;HDcdIn~d4gE0oXOLLK zEXG(m5s?)FWowBPF28UQ;rk!?l5BT6J$=9yKV%F_aWzrAK`0L!1k}6=P*l9C7$M(> z_m@qQpS#)Cd`Y}b{MtE&dk`CGlC z_m@qQpS#)Cd`Y}b{MtE&dk`CGlC!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary.1.wasm b/wasm-spec-tests/generated-tests/wasms/binary.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary.2.wasm b/wasm-spec-tests/generated-tests/wasms/binary.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary.3.wasm b/wasm-spec-tests/generated-tests/wasms/binary.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary.48.wasm b/wasm-spec-tests/generated-tests/wasms/binary.48.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2419e8001b90dea165b7dbcaf10bc6b5da2fa28c GIT binary patch literal 317 zcmYL@F;2rk5JmsY?5-1UBwR%_NV6eDPGFa0xd?V)Are9Yjt~@hQ&3WH5$?dz*i=++ z{+rR)pc{4sfUaE2DWR2=5~UVs>72%KL=GHS`lr`fzaJjW>sMI)CP)JT=VjZ7kf s%cHB=s9muM#Vx`_3!OBQUkFp3Rwh@K`Ka6kuYQRO?@P){Zz=`;04e7&#{d8T literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary.53.wasm b/wasm-spec-tests/generated-tests/wasms/binary.53.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/binary.54.wasm b/wasm-spec-tests/generated-tests/wasms/binary.54.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/block.0.wasm b/wasm-spec-tests/generated-tests/wasms/block.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..57fa22a2c0769b95841572a8151252d272e576df GIT binary patch literal 5298 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 MaW-Cb?MP$(1^?L%n*aa+ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/br_if.0.wasm b/wasm-spec-tests/generated-tests/wasms/br_if.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..73d5d13ab2adbafba9aa5231d40885a9ae103d0f GIT binary patch literal 8892 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/br_table.0.wasm b/wasm-spec-tests/generated-tests/wasms/br_table.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6a1c495e9f3c20c12247187aed992e90d444b619 GIT binary patch literal 23439 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm b/wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..beb481804abd4a4514f7af7327ba64e18f144f7d GIT binary patch literal 401 zcmYL^Jx&8L6oltJ+q>R)1FjGa(sM`=E|8SO9DxhuM_Qx=LP9n|(5zEXQg9?r!#Qwh zsJ@wzM)MvP?S=r*RWaw3FjpxhN^@XNC)afyvf;q0d48>%ZM)je7H!+?55OrZHqEAO z4j@%oW@U_Ftqtvn$S4987b;Oae#0fiuYZ(5^KuVkmiyW20fo&xES66VO0(GQp59UQ ze#mNg<;Fzm8qq%v5HaRDLNMZb#E9iOzP$``_%S`DV?JiyW`0f`!Uvg_a82|tP literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/call.0.wasm b/wasm-spec-tests/generated-tests/wasms/call.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7aa3a19e1d13eca77b254cf80dd1b0fe6ea72296 GIT binary patch literal 6729 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm b/wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b89f42f73e6edffeb1bf5335a4b94bb9bd1525e GIT binary patch literal 12615 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 G&-;J!;%1Bh literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.0.wasm b/wasm-spec-tests/generated-tests/wasms/const.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e470a87115c7802de616c97eba04c33e09afe52b GIT binary patch literal 318 zcmYL@F;2rk5JmsY?5-1UBwQhcgftscBXZ!t(m%h=`u*^@Uw6aMzaD|Ja=U&v^hc05 z%PiIyO9vvdLLhf3iQ?%OJ|TYpqnMKI4u_`?xblarK_$K>O1FsBc8-XeXAz1e&z6i> zY~uUNJj>73+17l@yvzJrd4{)$>DoVtO*BgG2og0I6*b#n)hti)+2>{)=j#EM>DJ4oB(9v0q&*-i4NoH!3!W|* zu~^6B>nxj}%d^|?Df2G#Yv~!jL_Fm=Ui(L}iAKpeL81nuqGl7U+Bs@gt7zpagIcLG wxRpsnaCvnN8?_5Ip}0qwXrYr;Ly!tsVyss!9y{Q%W0}47cBme*a literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.100.wasm b/wasm-spec-tests/generated-tests/wasms/const.100.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.101.wasm b/wasm-spec-tests/generated-tests/wasms/const.101.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.102.wasm b/wasm-spec-tests/generated-tests/wasms/const.102.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.103.wasm b/wasm-spec-tests/generated-tests/wasms/const.103.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.104.wasm b/wasm-spec-tests/generated-tests/wasms/const.104.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.105.wasm b/wasm-spec-tests/generated-tests/wasms/const.105.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.106.wasm b/wasm-spec-tests/generated-tests/wasms/const.106.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.107.wasm b/wasm-spec-tests/generated-tests/wasms/const.107.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.108.wasm b/wasm-spec-tests/generated-tests/wasms/const.108.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.110.wasm b/wasm-spec-tests/generated-tests/wasms/const.110.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.112.wasm b/wasm-spec-tests/generated-tests/wasms/const.112.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.114.wasm b/wasm-spec-tests/generated-tests/wasms/const.114.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.116.wasm b/wasm-spec-tests/generated-tests/wasms/const.116.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.118.wasm b/wasm-spec-tests/generated-tests/wasms/const.118.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a9fbbc164059e341582986d3f86371c905fb509e GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!SQ+e>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$Ey8E&u=k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.12.wasm b/wasm-spec-tests/generated-tests/wasms/const.12.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9c538d5bf766430ea47f97fdd41cca8ecf887631 GIT binary patch literal 318 zcmYL@F;2rk5JmsY?5-1UBwQhcgftscBXZ!t(m%h=`u*^@zwd^je?0Sa9S%<)aODqKgGzi&lx`8L?Hmy`&mt5{o-G-% z*u?jjd6u86v#t4*d6)UM@(gdWPS^fHY@$(eN06w&sHoWnt9F5k)hZgf%AiK73~po+ t5nLW!%|`8#O(@m~6D@SoNd6&Aby}HRRpz5|6TJEbF1#-(FTJT0_yc@3G9&;1 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.120.wasm b/wasm-spec-tests/generated-tests/wasms/const.120.wasm new file mode 100644 index 0000000000000000000000000000000000000000..92533df47a7a9ac3ea43e3ada7d8ed3777180c6b GIT binary patch literal 572 zcmYL_F^>~55QX2&*lTCK(QSngG~*DVP*Bh$h=wfm6tonV2omX%3zs7)BCP*PmY z-{242Ph)ZvRL`FAd~cpH-)#s04Z@5|!AwdiRA#`8>;~G;fyE8{u!Z*XQpV~*-x;w)Dk8MV@Iog+^*_AQ*T-H4-s zds??hhDtV+R=LsUG{XqP3kB6M1Yx6KPF&BGI6g9jh_h4kLCs zyo1FE8YcqvFXUgK_%YYEMcqeRC7ZEKtuu$lW}8*+YyV`Qp4y+=XQldlsmuArrM`l# Iot!H07xHFN9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.121.wasm b/wasm-spec-tests/generated-tests/wasms/const.121.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4e1ba3ddbe1316aed98232202dfb32f186e20bf9 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo&(hSba(g2a*pG(ciFW*du8>nxKTEnTxsG{XqP5J5i99x;iL@p>k!aA$j@6hg z!-!oDZ(%ip#)&}vbNN>&zR$I#sQYNEWINWWb>`66ZnMgL?Vs$^6MJ)etW;ktbveJh M(wDH<$*BT=0aYAQD*ylh literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.122.wasm b/wasm-spec-tests/generated-tests/wasms/const.122.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.123.wasm b/wasm-spec-tests/generated-tests/wasms/const.123.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.124.wasm b/wasm-spec-tests/generated-tests/wasms/const.124.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.125.wasm b/wasm-spec-tests/generated-tests/wasms/const.125.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.126.wasm b/wasm-spec-tests/generated-tests/wasms/const.126.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.128.wasm b/wasm-spec-tests/generated-tests/wasms/const.128.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f212f008aa9b01161f4c581ecebd16ddeefa0b8b GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjnd$Qo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0_X6JkJ7W3VP0MH=JxD?E!ltN_&%*bw_{Y(yr!^4R)%i{CbW^ui{ zyuO(4c8f2!z^PPi7MtDT79=q+OU3Zc)0T+55U6@2g}UQCQbG6Yzl1*165h|Z+pF)0 z^_>KVR??WLJVn>82k0>7rh{U{&4|&3Rrl>?V8tKPQ+3Qo(^sZHr-_jQ-T=q<>63Sb z_f%-_jFgR)NujjPtUN?_caJRg^!MBBTA#hL`j^}&n@z5?`jdkObsuunn0wk&X@fCp zdsnY=(lo?b`bg;nXKRQxWSyP5p>1V6r~VvgCN$=#?m5nK)sayv4L3RRRAb-58QYCG z8n~x*i)5%|Lur*8ZB8Bs@r4f$A*53?5Or(g`ypD}Suv5vCNz=OgeMXWTG_E0v+Xcq zm&0pVjG%EMQ2$K+1&Z%-ZCliRv{kYh%hWn^Xl%Aw<-Yb$_UVcJxqViuFP6HTUtZ}8 K*xJdd0)GMXj#1|T literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.129.wasm b/wasm-spec-tests/generated-tests/wasms/const.129.wasm new file mode 100644 index 0000000000000000000000000000000000000000..db8e213a814ff57d2bd35a21412b109ab6a6a88c GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=pgjU;+XX85-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+JV9RH+G z-WA?cp}jLwHdZEu(mJ#95Z&E9vYg}i{%v-x&t6&mOKz0SCRbYh&Ow8^4>@YgJ?*Kq z!5FpuSFdu?G{jl@Na+M;yAZpOb$058mdbce{VSZA(3qpT=Qzt%M@FqQ+~mkpjeRR; zY&YU);GWhklA)3!y8zQpm8El|4jZBitlo5De6AjD%p;8YMnVWw%e?7U;8Kf^u*rW9xK%sOI^+{ Muk-~hc56zl x1~)Q_2rjR#W}|k_CKOAAkrp~?B$o+e9akntmHDY$2d{pHbMH&aM{gHnso& literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.130.wasm b/wasm-spec-tests/generated-tests/wasms/const.130.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.132.wasm b/wasm-spec-tests/generated-tests/wasms/const.132.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.134.wasm b/wasm-spec-tests/generated-tests/wasms/const.134.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.136.wasm b/wasm-spec-tests/generated-tests/wasms/const.136.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.138.wasm b/wasm-spec-tests/generated-tests/wasms/const.138.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.140.wasm b/wasm-spec-tests/generated-tests/wasms/const.140.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.142.wasm b/wasm-spec-tests/generated-tests/wasms/const.142.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.144.wasm b/wasm-spec-tests/generated-tests/wasms/const.144.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.146.wasm b/wasm-spec-tests/generated-tests/wasms/const.146.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.148.wasm b/wasm-spec-tests/generated-tests/wasms/const.148.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.150.wasm b/wasm-spec-tests/generated-tests/wasms/const.150.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.152.wasm b/wasm-spec-tests/generated-tests/wasms/const.152.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.154.wasm b/wasm-spec-tests/generated-tests/wasms/const.154.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e4dca6fda52b21959d979d894e13ad0f2b0a929b GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI2Rn>r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+J#IQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zujU|k^lez literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.156.wasm b/wasm-spec-tests/generated-tests/wasms/const.156.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f212f008aa9b01161f4c581ecebd16ddeefa0b8b GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjnd$Qo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0_X6JkJ7W3VP0MH=JxD?E!ltN_&%*bw_{Y(yr!^4R)%i{CbW^ui{ zyuO(4c8f2!z^PPi7MtDT79=q+OU3Zc)0T+55U6@2g}UQCQbG6Yzl1*165h|Z+pF)0 z^_>KVR??WLJVn>82k0>7rh{U{&4|&3Rrl>?V8tKPQ+3Qo(^sZHr-_jQ-T=q<>63Sb z_f%-_jFgR)NujjPtUN?_caJRg^!MBBTA#hL`j^}&n@z5?`jdkObsuunn0wk&X@fCp zdsnY=(lo?b`bg;nXKRQxWSyP5p>1V6r~VvgCN$=#?m5nK)sayv4L3RRRAb-58QYCG z8n~x*i)5%|Lur*8ZB8Bs@r4f$A*53?5Or(g`ypD}Suv5vCNz=OgeMXWTG_E0v+Xcq zm&0pVjG%EMQ2$K+1&Z%-ZCliRv{kYh%hWn^Xl%Aw<-Yb$_UVcJxqViuFP6HTUtZ}8 K*xJdd0)GMXj#1|T literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.157.wasm b/wasm-spec-tests/generated-tests/wasms/const.157.wasm new file mode 100644 index 0000000000000000000000000000000000000000..db8e213a814ff57d2bd35a21412b109ab6a6a88c GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=pgjU;+XX85-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+JV9RH+G z-WA?cp}jLwHdZEu(mJ#95Z&E9vYg}i{%v-x&t6&mOKz0SCRbYh&Ow8^4>@YgJ?*Kq z!5FpuSFdu?G{jl@Na+M;yAZpOb$058mdbce{VSZA(3qpT=Qzt%M@FqQ+~mkpjeRR; zY&YU);GWhklA)3!y8zQpm8El|4jZBitlo5De6AjD%p;8YMnVWw%e?7U;8Kf^u*rW9xK%sOI^+{ Muk-~hc5ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.16.wasm b/wasm-spec-tests/generated-tests/wasms/const.16.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a0617f877e4d9e9bed5e0a313fc0cc0630f7b88c GIT binary patch literal 321 zcmYL^F;2rk5JmsY?5-VeBwQhcgtQw{fFlHrHw7gHSK$U6jY&oI z=KmRe{lRM35&*h#9p{Wra?X@Hprex-#}O(xvh>ey(|$KR?(SE^(7zslljXMkcIXcv zah6%EF_!j3WQ9QPTr#EOFMLM&{zow(yV~!cKH#b!vIe#IhA3Yn)tea-8lENuEO@$L zq+*@kUuJ54E>CX5N9B$3Yv~!j#GQVSFa3kqOrvN_loX-~63iyrVCSeg*nn0p6x2$s w;8x0n=yY@qn_w4gVsVRDh9Z=$XpJ}tliFxhrAO5|`rzj{^S&ZodQ%7B5A&rmD*ylh literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.160.wasm b/wasm-spec-tests/generated-tests/wasms/const.160.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.162.wasm b/wasm-spec-tests/generated-tests/wasms/const.162.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.164.wasm b/wasm-spec-tests/generated-tests/wasms/const.164.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.166.wasm b/wasm-spec-tests/generated-tests/wasms/const.166.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.168.wasm b/wasm-spec-tests/generated-tests/wasms/const.168.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.17.wasm b/wasm-spec-tests/generated-tests/wasms/const.17.wasm new file mode 100644 index 0000000000000000000000000000000000000000..777997e8876d75cb7b18753537106ef886f73cf1 GIT binary patch literal 321 zcmYL^F;2rk5JmsY?5-VeBwQhcgtQw{Jez=5QX2&?B1?#&&pK@iDuTgFa-sTjnd$Qo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0_X6JkJ7W3VP0MH=JxD?E!ltN_&%*bw_{Y(yr!^4R)%i{CbW^ui{ zyuO(4c8f2!z^PPi7MtDT79=q+OU3Zc)0T+55U6@2g}UQCQbG6Yzl1*165h|Z+pF)0 z^_>KVR??WLJVn>82k0>7rh{U{&4|&3Rrl>?V8tKPQ+3Qo(^sZHr-_jQ-T=q<>63Sb z_f%-_jFgR)NujjPtUN?_caJRg^!MBBTA#hL`j^}&n@z5?`jdkObsuunn0wk&X@fCp zdsnY=(lo?b`bg;nXKRQxWSyP5p>1V6r~VvgCN$=#?m5nK)sayv4L3RRRAb-58QYCG z8n~x*i)5%|Lur*8ZB8Bs@r4f$A*53?5Or(g`ypD}Suv5vCNz=OgeMXWTG_E0v+Xcq zm&0pVjG%EMQ2$K+1&Z%-ZCliRv{kYh%hWn^Xl%Aw<-Yb$_UVcJxqViuFP6HTUtZ}8 K*xJdd0)GMXj#1|T literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.171.wasm b/wasm-spec-tests/generated-tests/wasms/const.171.wasm new file mode 100644 index 0000000000000000000000000000000000000000..db8e213a814ff57d2bd35a21412b109ab6a6a88c GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=pgjU;+XX85-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+JV9RH+G z-WA?cp}jLwHdZEu(mJ#95Z&E9vYg}i{%v-x&t6&mOKz0SCRbYh&Ow8^4>@YgJ?*Kq z!5FpuSFdu?G{jl@Na+M;yAZpOb$058mdbce{VSZA(3qpT=Qzt%M@FqQ+~mkpjeRR; zY&YU);GWhklA)3!y8zQpm8El|4jZBitlo5De6AjD%p;8YMnVWw%e?7U;8Kf^u*rW9xK%sOI^+{ Muk-~hc5ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.174.wasm b/wasm-spec-tests/generated-tests/wasms/const.174.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dc337210376a500fa9c2e048b2567b32a5ea239 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJI42z6r%&D$ z-czByGg3BICWX>Ev+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+KAIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuJyckN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.176.wasm b/wasm-spec-tests/generated-tests/wasms/const.176.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5bd1ace99458c069d3670a076cd9c812e53f072c GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@iDuTgFa-sTjcD+Zo`MRABDTPmV#mb65rV>A7nBsK z`4@;kke|jl6jX0-_U3!-F+bzD_0;f^6S!{NTTad)SEEU5$Pg^4LLZIrA6zY!mNCn-m{}TF4OL#xuZm+&0 z)^`#dT1jJ~@)TXW9-zaRn+}Q*HzP(DR^7Lofen95Pt!3UO<$Y-oF+yJIAEv+@w#-956L1Ha#9*ZS<0)xYFM*=%y9)t?+RsQZwk#@y4MN*jz( z+kf>cCrv|~rH_jNe zjt1^&-69z(*-~2NMw^qzL44uELka2B3`E`9_5-{hsQn_y2FqcN+pggD~S#Fq2XWl^HN2`vUD}ayT3wPMld5pT9PX z>)qw`#eBD0e7OZqqiVC*>=w5miGf)vhIgK}MC64))gvj?9q*9}x?le#^qH3Me!ksa zeMhYCBsjE^#zf^Qx^_K4hcP!D6eDg%j4rIYZ#M%Q{+OPoV?LU`HvKtGj1+LrIQ~hW zyeqt?LVIVVY^+QQrFCZIA-cPJWI4z2{oCwXpS`mBm)t0uO|G>1or4B-A9B=~d)iZJ zgE4CRuU_S(X^6A*k+IAGEtT<{`d2tJp)p5w&vBNkj*MDqxXF>H8v9nx z*lxtpz&)*7Bts=zN~_#xbMiQdFMN0?A)T6ms9PJ~57Am?#Y7&P&_r4jo=7xkWyfmF zmSMy$hc~bqLE}WA{+awM6yN3AQq+C4Rk9uH)H-u$Y`0nEzV=V{>509$JyxnOmb#o@ MUg-;1?BrB|zuWjykpKVy literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.178.wasm b/wasm-spec-tests/generated-tests/wasms/const.178.wasm new file mode 100644 index 0000000000000000000000000000000000000000..209cc1daa1c9f84e3f719f6684b97781de642d77 GIT binary patch literal 574 zcmYk2v5pfl5QhI5+iPdNQMN)zG~f+F!1loaSn z9s^$B9*x;FQ2qAU^ZoM=mWLeypt0|`6m+JPLZt&b(i`a5nbYZXK5=5R`t+q)-5joN zE|-VH>hm4Ym#W=rcUawlOz_O6VmRw)PejfTsCr@w<@-m(g8b{B_#x98&Mo)*>u(74 zgYg!vi8G?|9J$?&kul>YLonrL%E*3`zuu0u_v~zmscSs)VI_&5f`cB`^L@3KGP9NCO$9T52(^S4z}> zag!QpCK$z!6ni}DgV6`G?ST`WD><>^-e9CcGY(>3Vw9>(imt@proamcLyf0=JLRAj z1F2iYvxoi9<770-=^VpkQ3E4(t9&;>%i;uc^HhcArd8p&2@0+BSj|{xn6gd&Ei{dn zFgFnQ!h}AQg!ie|De58GDr!%Z*jjaHw71!$p$z+o@tJO2*A?r_wXBy{*YXNFcC;eE EUo=Hg9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.179.wasm b/wasm-spec-tests/generated-tests/wasms/const.179.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1663ae0751a1e4e2f1faad3cdf591c17228f2656 GIT binary patch literal 572 zcmYL_J&qGW5QXcf|2#b-PlS+2s*M8^5Ri<~CV1cgNTdWi7L28}*Q^(>5CoofKuEAL z*WdzsG-{TB=yg|heXm}_`nX2`z?ttTXXrTRjJX5oP;Y>zj)!4*JW(R8`WQ{NDw`|(=g}w*_uoz z%y=?NO3F$oAh=5;G>7*70TPc--zQVsWQD}Orcy|4k`wnQdGTUCrXV3rWFlO9Wfc0Z z*rq6P4%7Gv;|M2hur_#?jF`D@r930{0;Ve1P!RJHrpdLaR44v61zJg{G@P={f`Wo4 zQq&L?6?G_XQz_->F|f@vJci&_)PTk8lyB!y>&^m8eyV~?u2pEsL7`5Mt|8rFK_>aP zpfS9JC4<-({4Y@WkP6+RsGxRHXEal7)S=Yba+@ltM*H|o|6D&S7MB~@tgo)+73kX0 HhyeTrou*LV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.18.wasm b/wasm-spec-tests/generated-tests/wasms/const.18.wasm new file mode 100644 index 0000000000000000000000000000000000000000..305b7f512c84095b22e208e625f00516598b31aa GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yx(msfeG)b!Q5}a2~oLYPB^a2$-?a<0a0<}^l xa4UI$H)%8tE2nE#KD&j_UFPyu(i?u}W|c}+MLH^0-a5O$nY9I_rB#&!{s19ZG^hXo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.180.wasm b/wasm-spec-tests/generated-tests/wasms/const.180.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b08b06dcb597116d63551d2c864ab902288d2a9f GIT binary patch literal 572 zcmYL_F>@0!5QX2aq?3F)kFR2wp;;Lhrl6p)8JhUWKcJ<^dEh(~J0=d!Fi`m9f|4RN ze}g}epT=G&sGe?h`@Q#s^>I%CXzE+e8Li1VQ*MEl^b2%qP2cxVCr)g-FW;)}_IQ1J zwLTuZulK+(D)!y}*xiFn@XV%QIP2&@M9vVXcxEy+=SReh=J$W`W2Oz9TOSTLKM=|X z<1K0v7ex6bntC@yg9TR&1aq$DjK*)9?{`xj{#*^y1)o(fRDZ1^BYIp8ZQ^HVGoL8a z$to!+E0I8Gmsog)=HU^^Tmt8dWNVk4u(-Ee39C&ir1+D(c(ET-kdQ_)5>tC+l=@$} zO;O?ullY0^0B5~0dSQ0Sik)dHFj1ie2eGd)Nkv0SEyUlYz$*!3EvIZd=b+$` zlr^HFqAta4s-zk`dgC(pPbEwvYGB0fl<#J!HM3x8o~zK()GE9*L7{~niv??jIossl zLu+^mO9OGQ%)dh6Ln<{zIYwPX-O*09RfkG1lY<6zA9K{0d)iZJgE4CR zuU_Y*X@o)gMClA?yAZpOO?K)=mdbce{TmESXu?t5OAK<=kx?rRw>k1mW8cad+l@II zxTkfCWT<3IX`LHw&K^hcg^!OVq*F5xbsOXR5n9Wvn95TVno4WJQ;7zx>{w0MGK|^f z@D5fZXq*bvzmR{0;)h&Yin@=sO15L2T4xT8?KbP&*Z$c)J+n8r$4d3(N>_`kYkdWa Iot!H07oQMN-~a#s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.182.wasm b/wasm-spec-tests/generated-tests/wasms/const.182.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b08b06dcb597116d63551d2c864ab902288d2a9f GIT binary patch literal 572 zcmYL_F>@0!5QX2aq?3F)kFR2wp;;Lhrl6p)8JhUWKcJ<^dEh(~J0=d!Fi`m9f|4RN ze}g}epT=G&sGe?h`@Q#s^>I%CXzE+e8Li1VQ*MEl^b2%qP2cxVCr)g-FW;)}_IQ1J zwLTuZulK+(D)!y}*xiFn@XV%QIP2&@M9vVXcxEy+=SReh=J$W`W2Oz9TOSTLKM=|X z<1K0v7ex6bntC@yg9TR&1aq$DjK*)9?{`xj{#*^y1)o(fRDZ1^BYIp8ZQ^HVGoL8a z$to!+E0I8Gmsog)=HU^^Tmt8dWNVk4u(-Ee39C&ir1+D(c(ET-kdQ_)5>tC+l=@$} zO;O?ullY0^0B5~0dSQ0Sik)dHFj1ie2eGd)Nkv0SEyUlYz$*!3EvIZd=b+$` zlr^HFqAta4s-zk`dgC(pPbEwvYGB0fl<#J!HM3x8o~zK()GE9*L7{~niv??jIossl zLu+^mO9OGQ%)dh6Ln<{zIYwPX-O*09RfkG1lY<6zA9K{0d)iZJgE4CR zuU_Y*X@o)gMClA?yAZpOO?K)=mdbce{TmESXu?t5OAK<=kx?rRw>k1mW8cad+l@II zxTkfCWT<3IX`LHw&K^hcg^!OVq*F5xbsOXR5n9Wvn95TVno4WJQ;7zx>{w0MGK|^f z@D5fZXq*bvzmR{0;)h&Yin@=sO15L2T4xT8?KbP&*Z$c)J+n8r$4d3(N>_`kYkdWa Iot!H07oQMN-~a#s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.184.wasm b/wasm-spec-tests/generated-tests/wasms/const.184.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b08b06dcb597116d63551d2c864ab902288d2a9f GIT binary patch literal 572 zcmYL_F>@0!5QX2aq?3F)kFR2wp;;Lhrl6p)8JhUWKcJ<^dEh(~J0=d!Fi`m9f|4RN ze}g}epT=G&sGe?h`@Q#s^>I%CXzE+e8Li1VQ*MEl^b2%qP2cxVCr)g-FW;)}_IQ1J zwLTuZulK+(D)!y}*xiFn@XV%QIP2&@M9vVXcxEy+=SReh=J$W`W2Oz9TOSTLKM=|X z<1K0v7ex6bntC@yg9TR&1aq$DjK*)9?{`xj{#*^y1)o(fRDZ1^BYIp8ZQ^HVGoL8a z$to!+E0I8Gmsog)=HU^^Tmt8dWNVk4u(-Ee39C&ir1+D(c(ET-kdQ_)5>tC+l=@$} zO;O?ullY0^0B5~0dSQ0Sik)dHFj1ie2eGd)Nkv0SEyUlYz$*!3EvIZd=b+$` zlr^HFqAta4s-zk`dgC(pPbEwvYGB0fl<#J!HM3x8o~zK()GE9*L7{~niv??jIossl zLu+^mO9OGQ%)dh6Ln<{zIYwPX-O*09RfkG1lY<6zA9K{0d)iZJgE4CR zuU_Y*X@o)gMClA?yAZpOO?K)=mdbce{TmESXu?t5OAK<=kx?rRw>k1mW8cad+l@II zxTkfCWT<3IX`LHw&K^hcg^!OVq*F5xbsOXR5n9Wvn95TVno4WJQ;7zx>{w0MGK|^f z@D5fZXq*bvzmR{0;)h&Yin@=sO15L2T4xT8?KbP&*Z$c)J+n8r$4d3(N>_`kYkdWa Iot!H07oQMN-~a#s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.186.wasm b/wasm-spec-tests/generated-tests/wasms/const.186.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b08b06dcb597116d63551d2c864ab902288d2a9f GIT binary patch literal 572 zcmYL_F>@0!5QX2aq?3F)kFR2wp;;Lhrl6p)8JhUWKcJ<^dEh(~J0=d!Fi`m9f|4RN ze}g}epT=G&sGe?h`@Q#s^>I%CXzE+e8Li1VQ*MEl^b2%qP2cxVCr)g-FW;)}_IQ1J zwLTuZulK+(D)!y}*xiFn@XV%QIP2&@M9vVXcxEy+=SReh=J$W`W2Oz9TOSTLKM=|X z<1K0v7ex6bntC@yg9TR&1aq$DjK*)9?{`xj{#*^y1)o(fRDZ1^BYIp8ZQ^HVGoL8a z$to!+E0I8Gmsog)=HU^^Tmt8dWNVk4u(-Ee39C&ir1+D(c(ET-kdQ_)5>tC+l=@$} zO;O?ullY0^0B5~0dSQ0Sik)dHFj1ie2eGd)Nkv0SEyUlYz$*!3EvIZd=b+$` zlr^HFqAta4s-zk`dgC(pPbEwvYGB0fl<#J!HM3x8o~zK()GE9*L7{~niv??jIossl zLu+^mO9OGQ%)dh6Ln<{zIYwPX-O*09RfkG1lY<6zA9K{0d)iZJgE4CR zuU_Y*X@o)gMClA?yAZpOO?K)=mdbce{TmESXu?t5OAK<=kx?rRw>k1mW8cad+l@II zxTkfCWT<3IX`LHw&K^hcg^!OVq*F5xbsOXR5n9Wvn95TVno4WJQ;7zx>{w0MGK|^f z@D5fZXq*bvzmR{0;)h&Yin@=sO15L2T4xT8?KbP&*Z$c)J+n8r$4d3(N>_`kYkdWa Iot!H07oQMN-~a#s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.188.wasm b/wasm-spec-tests/generated-tests/wasms/const.188.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b08b06dcb597116d63551d2c864ab902288d2a9f GIT binary patch literal 572 zcmYL_F>@0!5QX2aq?3F)kFR2wp;;Lhrl6p)8JhUWKcJ<^dEh(~J0=d!Fi`m9f|4RN ze}g}epT=G&sGe?h`@Q#s^>I%CXzE+e8Li1VQ*MEl^b2%qP2cxVCr)g-FW;)}_IQ1J zwLTuZulK+(D)!y}*xiFn@XV%QIP2&@M9vVXcxEy+=SReh=J$W`W2Oz9TOSTLKM=|X z<1K0v7ex6bntC@yg9TR&1aq$DjK*)9?{`xj{#*^y1)o(fRDZ1^BYIp8ZQ^HVGoL8a z$to!+E0I8Gmsog)=HU^^Tmt8dWNVk4u(-Ee39C&ir1+D(c(ET-kdQ_)5>tC+l=@$} zO;O?ullY0^0B5~0dSQ0Sik)dHFj1ie2eGd)Nkv0SEyUlYz$*!3EvIZd=b+$` zlr^HFqAta4s-zk`dgC(pPbEwvYGB0fl<#J!HM3x8o~zK()GE9*L7{~niv??jIossl zLu+^mO9OGQ%)dh6Ln<{zIYwPX-O*09RfkG1lY<6zA9K{0d)iZJgE4CR zuU_Y*X@o)gMClA?yAZpOO?K)=mdbce{TmESXu?t5OAK<=kx?rRw>k1mW8cad+l@II zxTkfCWT<3IX`LHw&K^hcg^!OVq*F5xbsOXR5n9Wvn95TVno4WJQ;7zx>{w0MGK|^f z@D5fZXq*bvzmR{0;)h&Yin@=sO15L2T4xT8?KbP&*Z$c)J+n8r$4d3(N>_`kYkdWa Iot!H07oQMN-~a#s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.19.wasm b/wasm-spec-tests/generated-tests/wasms/const.19.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2927f0e27876d386b716d437f27c8791ce7d941b GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yHOZy-?(j=+IOK@H}acb?g(+gDWv_mTw3DioJ xz^&u~-lWkqtemb{`Ro=xcbUsuNpJX>n^h`R73rv0dF$)~XVw;!mR3~`_yb(nH7Ec8 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.190.wasm b/wasm-spec-tests/generated-tests/wasms/const.190.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5d5a701fec624706d8c46cfdc95b8feb444dbfc8 GIT binary patch literal 572 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 IlT!u$0-$fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yx(msfeG)b!Q5}a2~oLYPB^a2$-?a<0a0<}^l xa4UI$H)%8tE2nE#KD&j_UFPyu(i?u}W|c}+MLH^0-a5O$nY9I_rB#&!{s19ZG^hXo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.200.wasm b/wasm-spec-tests/generated-tests/wasms/const.200.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5d5a701fec624706d8c46cfdc95b8feb444dbfc8 GIT binary patch literal 572 zcmYL_v2s%}5Jm6qN>B3B^Y~R6W@uK%g()a#Y$gqU;^i_<#;?kpE$EDzkY9)H~Xub z%f)`b{B{SNO4W9`-7oJz5(BeT4DUSch{y|psxv9n-9I4}bbtO!=rgV0{bIMf{)t#W zNN{K+O^C`XbnRw{4ij!VD8}538C_U+KW>Ls{53mOCwy=E-t_k@F;c(#>%8n+GJK9p?i2jmJ541%dYj=E31FUjk4L~N~^~lG^qQOqsH9Ro=O{xQQNzE zos*^!2I(`U6P&Ff){sqh>PEJe@tpc|3`}UkQQaF1a@CPhD-E|f@=Rmj!Wr9*IU2a9 zb&F)EWJ7748*NS=NAZP^&mp8!GZ1wf+gUM{7bY~7)`X`L4O-c;ny~FKW|zYU zSd5@?Dp3Dg{soF3b8TDHeY91w8Ozi|Nml z6*@R0Wn*PhC~Yz;kI>yeAj^gIexF_IvsYICnj2-a$(2@ra?qgeV~!egPkSnDFh*_v z)$5!zjW9@`D4pSK7h)H($xhwKQW?*we}jPuO*pE1i9xP9GHRvaHb{~fwyD>)t z_q1-243%stt#hNz+2bg_@bR&PbZQ2oZex5uLTi~7Q+aAaQ)x|jD$$^o9jggjhB3Pw z-oa`FjZ=a87xJ%A{E%x)QTNeS$#$$$>&&6C-DaKp+CST;XZGgySgF2T>1uIxt*>CQ IlT!u$0-$B3B^Y~R6W@uK%g()a#Y$gqU;^i_<#;?kpE$EDzkY9)H~Xub z%f)`b{B{SNO4W9`-7oJz5(BeT4DUSch{y|psxv9n-9I4}bbtO!=rgV0{bIMf{)t#W zNN{K+O^C`XbnRw{4ij!VD8}538C_U+KW>Ls{53mOCwy=E-t_k@F;c(#>%8n+GJK9p?i2jmJ541%dYj=E31FUjk4L~N~^~lG^qQOqsH9Ro=O{xQQNzE zos*^!2I(`U6P&Ff){sqh>PEJe@tpc|3`}UkQQaF1a@CPhD-E|f@=Rmj!Wr9*IU2a9 zb&F)EWJ7748*NS=NAZP^&mp8!GZ1wf+gUM{7bY~7)`X`L4O-c;ny~FKW|zYU zSd5@?Dp3Dg{soF3b8TDHeY91w8Ozi|Nml z6*@R0Wn*PhC~Yz;kI>yeAj^gIexF_IvsYICnj2-a$(2@ra?qgeV~!egPkSnDFh*_v z)$5!zjW9@`D4pSK7h)H($xhwKQW?*we}jPuO*pE1i9xP9GHRvaHb{~fwyD>)t z_q1-243%stt#hNz+2bg_@bR&PbZQ2oZex5uLTi~7Q+aAaQ)x|jD$$^o9jggjhB3Pw z-oa`FjZ=a87xJ%A{E%x)QTNeS$#$$$>&&6C-DaKp+CST;XZGgySgF2T>1uIxt*>CQ IlT!u$0-$B-P?-aBvMp!@S*LZ4{`?-#q>^-sk5 zL4rdoX+l(9p=&oobeM3{K{4iL%;>_p`*Az8;jh_gI^lcM_olyRiID;>#M-1U-W5Jj zp@TD0HdZEu(k8R=2;IXIvRnYOS$3_@URnJ+Zj{X?S6V&hph4ZI95v>i_Eg$njN1OI z*Ewk#VURvkI>Fg4#4co$ow|{wGM-a^j)4hHII4StL9RM7YNg>eN1kcyTRCI9F-HUU zv~H0Mm24@kbED14<0!uH@wtR_Y6hZiV|+hCYnc^Od0|3RX-#-4(V&$bs|j0%F}oZ- zz-k1IQ-S)|@~=?*m}^T>_t93#cC1tD%%QQ}W}W-mKiQ|3_U86jslHt4YH@X~Z(*^M HQw9D4D|Nml z6*@R0Wn*PhC~Yz;kI>yeAj^gIexF_IvsYICnj2-a$(2@ra?qgeV~!egPkSnDFh*_v z)$5!zjW9@`D4pSK7h)H($xhwKQW?*we}jPuO*pE1i9xP9GHRvaHb{~fwyD>)t z_q1-243%stt#hNz+2bg_@bR&PbZQ2oZex5uLTi~7Q+aAaQ)x|jD$$^o9jggjhB3Pw z-oa`FjZ=a87xJ%A{E%x)QTNeS$#$$$>&&6C-DaKp+CST;XZGgySgF2T>1uIxt*>CQ IlT!u$0-@wk;s5{u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.206.wasm b/wasm-spec-tests/generated-tests/wasms/const.206.wasm new file mode 100644 index 0000000000000000000000000000000000000000..67d3262eb3ab97f10184f2e3c52fb2cc51de00a3 GIT binary patch literal 572 zcmYL_F>@0!5QX3FN+UL$fk2OhG|oGc@=}PeDr&d%&KF9TNv<7${<;prlC6 z-{24ApP6+isGe?h`@Q#s#ePcwXc*>P3g%Kup)v>NWM81$xf~9M#}j9k<(F^G@@ju^ zb-vi|mtSvy)2P}mxBKM{NMc}?is7B79T9mUQ1wI#b$1U)1>Nue68cOlc)!@~E`K1_ z_YxdhNfV;-99_E^qQiun4vH~1V@4O&-S_LE4S&u~(+S_1zBT$6u@|C$?Rv&ofKe{#^E?qiM`b5DCJZ7@b{ z|JCc9G>tGwpD3N+Y!_k|vdK=}$Wj^4seglk2~9Yvdx=4=Ix=dd;W|g2Y3y4$W4kd& z1NXFUkqnh=DXnv(&B@~+zVP9(gmh{KqHbe+KSFDn6;pX?LQ`o?cq-ALl^v@ITZS>a z9Nxid1dUUH`WN!AQ2dZ^j(Q|rv3vE62!``SO*r)T!&_E@PtU+HRbajCCh Jv6E8;{sLLnR9OH3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.207.wasm b/wasm-spec-tests/generated-tests/wasms/const.207.wasm new file mode 100644 index 0000000000000000000000000000000000000000..090a86992c227e9e84968a722d59d19a3ec729b1 GIT binary patch literal 572 zcmYL_F^>~55QX22?X|PsC|e;UnsG=G3JRJ8(U9eS01_?5C4xk{HidAQL>ZDHzT=IuMaF1S+1GOwH*5F{AnYU;L111LszU!}Sk@ z^4@rh+Qb=AevYQzjnQDnRRh74t0|-L+vfZ2Scg9s{dC4B)wim@7LgG>F3#tCj-Q>) ze56cAtE8l?L;|5*V&Msz`v)X*fm42;Z0(X07WbMfVYNwx6n~NzFZN>!64F2hVrs99 zQvWNrDN3AR6hBey;j9-%FU&4ku@gNTsGIhp3CFJKCwX>QL!!wM|1A_V)3azPUbDEH5{*SzTSr KD`@O!MS#B#AynD` literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.208.wasm b/wasm-spec-tests/generated-tests/wasms/const.208.wasm new file mode 100644 index 0000000000000000000000000000000000000000..67d3262eb3ab97f10184f2e3c52fb2cc51de00a3 GIT binary patch literal 572 zcmYL_F>@0!5QX3FN+UL$fk2OhG|oGc@=}PeDr&d%&KF9TNv<7${<;prlC6 z-{24ApP6+isGe?h`@Q#s#ePcwXc*>P3g%Kup)v>NWM81$xf~9M#}j9k<(F^G@@ju^ zb-vi|mtSvy)2P}mxBKM{NMc}?is7B79T9mUQ1wI#b$1U)1>Nue68cOlc)!@~E`K1_ z_YxdhNfV;-99_E^qQiun4vH~1V@4O&-S_LE4S&u~(+S_1zBT$6u@|C$?Rv&ofKe{#^E?qiM`b5DCJZ7@b{ z|JCc9G>tGwpD3N+Y!_k|vdK=}$Wj^4seglk2~9Yvdx=4=Ix=dd;W|g2Y3y4$W4kd& z1NXFUkqnh=DXnv(&B@~+zVP9(gmh{KqHbe+KSFDn6;pX?LQ`o?cq-ALl^v@ITZS>a z9Nxid1dUUH`WN!AQ2dZ^j(Q|rv3vE62!``SO*r)T!&_E@PtU+HRbajCCh Jv6E8;{sLLnR9OH3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.209.wasm b/wasm-spec-tests/generated-tests/wasms/const.209.wasm new file mode 100644 index 0000000000000000000000000000000000000000..090a86992c227e9e84968a722d59d19a3ec729b1 GIT binary patch literal 572 zcmYL_F^>~55QX22?X|PsC|e;UnsG=G3JRJ8(U9eS01_?5C4xk{HidAQL>ZDHzT=IuMaF1S+1GOwH*5F{AnYU;L111LszU!}Sk@ z^4@rh+Qb=AevYQzjnQDnRRh74t0|-L+vfZ2Scg9s{dC4B)wim@7LgG>F3#tCj-Q>) ze56cAtE8l?L;|5*V&Msz`v)X*fm42;Z0(X07WbMfVYNwx6n~NzFZN>!64F2hVrs99 zQvWNrDN3AR6hBey;j9-%FU&4ku@gNTsGIhp3CFJKCwX>QL!!wM|1A_V)3azPUbDEH5{*SzTSr KD`@O!MS#B#AynD` literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.21.wasm b/wasm-spec-tests/generated-tests/wasms/const.21.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2927f0e27876d386b716d437f27c8791ce7d941b GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yHOZy-?(j=+IOK@H}acb?g(+gDWv_mTw3DioJ xz^&u~-lWkqtemb{`Ro=xcbUsuNpJX>n^h`R73rv0dF$)~XVw;!mR3~`_yb(nH7Ec8 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.210.wasm b/wasm-spec-tests/generated-tests/wasms/const.210.wasm new file mode 100644 index 0000000000000000000000000000000000000000..67d3262eb3ab97f10184f2e3c52fb2cc51de00a3 GIT binary patch literal 572 zcmYL_F>@0!5QX3FN+UL$fk2OhG|oGc@=}PeDr&d%&KF9TNv<7${<;prlC6 z-{24ApP6+isGe?h`@Q#s#ePcwXc*>P3g%Kup)v>NWM81$xf~9M#}j9k<(F^G@@ju^ zb-vi|mtSvy)2P}mxBKM{NMc}?is7B79T9mUQ1wI#b$1U)1>Nue68cOlc)!@~E`K1_ z_YxdhNfV;-99_E^qQiun4vH~1V@4O&-S_LE4S&u~(+S_1zBT$6u@|C$?Rv&ofKe{#^E?qiM`b5DCJZ7@b{ z|JCc9G>tGwpD3N+Y!_k|vdK=}$Wj^4seglk2~9Yvdx=4=Ix=dd;W|g2Y3y4$W4kd& z1NXFUkqnh=DXnv(&B@~+zVP9(gmh{KqHbe+KSFDn6;pX?LQ`o?cq-ALl^v@ITZS>a z9Nxid1dUUH`WN!AQ2dZ^j(Q|rv3vE62!``SO*r)T!&_E@PtU+HRbajCCh Jv6E8;{sLLnR9OH3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.211.wasm b/wasm-spec-tests/generated-tests/wasms/const.211.wasm new file mode 100644 index 0000000000000000000000000000000000000000..090a86992c227e9e84968a722d59d19a3ec729b1 GIT binary patch literal 572 zcmYL_F^>~55QX22?X|PsC|e;UnsG=G3JRJ8(U9eS01_?5C4xk{HidAQL>ZDHzT=IuMaF1S+1GOwH*5F{AnYU;L111LszU!}Sk@ z^4@rh+Qb=AevYQzjnQDnRRh74t0|-L+vfZ2Scg9s{dC4B)wim@7LgG>F3#tCj-Q>) ze56cAtE8l?L;|5*V&Msz`v)X*fm42;Z0(X07WbMfVYNwx6n~NzFZN>!64F2hVrs99 zQvWNrDN3AR6hBey;j9-%FU&4ku@gNTsGIhp3CFJKCwX>QL!!wM|1A_V)3azPUbDEH5{*SzTSr KD`@O!MS#B#AynD` literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.212.wasm b/wasm-spec-tests/generated-tests/wasms/const.212.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7e0160e322939a62da85f5c427d042bbb50dd1ea GIT binary patch literal 580 zcmYL_zmC&D5XR@vu6N_L6;}vBGaFKbf`TRyG#3L;zzdu$-phwcWDy(8j`z#5A^B3eek>&IR}${P+P3d6e}K<_ zvola}SR+jbKE&kk2)ivF!o~i!Y27(aagND)7KMS9& zNp!*yPey4`c@YH!50QkHP~Sa3~i|UA~V&!V>1;6Nbrv^n&$*57CHO>U7F8V&B4C1=r-oyn=bmYE)__?mBwfiZ3;! zvdxOTf@hLf5EK=(DePk*#pE%vO*B3R;ab#y#T=Axmr&`<0vmp+f*Y<>Xv1EinQpT+ z=?p6}(Y*tW;lytk#7+UHK>lOQb&9-%Dht}9nJS|Wh4vQvSV}qBhv)kD`e7kI-^s4M NxRlqRV+SJw@E41>QXK#Q literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.213.wasm b/wasm-spec-tests/generated-tests/wasms/const.213.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4e09dd9afa8f5a5a69edef7a75cfbd894b65ce87 GIT binary patch literal 580 zcmYL_zmC)}5XR?^9ed+Mn+hS(jF&Bzf`TS1u3-bz6uiJCLRoRUx7;2%A&^$_6_gZ| z=pKdY-h~%oaum4v?6K$f&1dL_0|EdpTuUiI%PA#HEkKKU0z9=mj^o3QB60ueOVM8q z7gy)qF!Y~q0H#uQ=nq4G1IXSHaYkT`#UmnGM!@V5Cv0x-AtY$-{);OKw_t5|JYIeS zpZ{WKpyE&?rl-(U`vo*mQ_+CHii#CM<95y0>xCA-Z>DNZx2msHe{2Fl2=G?J=sMno zkJcnQ;fN=rw5Ys@0)qQULQ80V-b3Vn&)@xd6HR5K6%zZBz0foEF_Y|fbmGKx(Tk5W znF&`;Ik~>ecQHsbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.215.wasm b/wasm-spec-tests/generated-tests/wasms/const.215.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.216.wasm b/wasm-spec-tests/generated-tests/wasms/const.216.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.217.wasm b/wasm-spec-tests/generated-tests/wasms/const.217.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.218.wasm b/wasm-spec-tests/generated-tests/wasms/const.218.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.219.wasm b/wasm-spec-tests/generated-tests/wasms/const.219.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.22.wasm b/wasm-spec-tests/generated-tests/wasms/const.22.wasm new file mode 100644 index 0000000000000000000000000000000000000000..305b7f512c84095b22e208e625f00516598b31aa GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yx(msfeG)b!Q5}a2~oLYPB^a2$-?a<0a0<}^l xa4UI$H)%8tE2nE#KD&j_UFPyu(i?u}W|c}+MLH^0-a5O$nY9I_rB#&!{s19ZG^hXo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.220.wasm b/wasm-spec-tests/generated-tests/wasms/const.220.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.221.wasm b/wasm-spec-tests/generated-tests/wasms/const.221.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.222.wasm b/wasm-spec-tests/generated-tests/wasms/const.222.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.223.wasm b/wasm-spec-tests/generated-tests/wasms/const.223.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.224.wasm b/wasm-spec-tests/generated-tests/wasms/const.224.wasm new file mode 100644 index 0000000000000000000000000000000000000000..780b095b83e6563f677d60b2b5a81df18bb6143b GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.225.wasm b/wasm-spec-tests/generated-tests/wasms/const.225.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.227.wasm b/wasm-spec-tests/generated-tests/wasms/const.227.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.229.wasm b/wasm-spec-tests/generated-tests/wasms/const.229.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UfFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yHOZy-?(j=+IOK@H}acb?g(+gDWv_mTw3DioJ xz^&u~-lWkqtemb{`Ro=xcbUsuNpJX>n^h`R73rv0dF$)~XVw;!mR3~`_yb(nH7Ec8 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.230.wasm b/wasm-spec-tests/generated-tests/wasms/const.230.wasm new file mode 100644 index 0000000000000000000000000000000000000000..780b095b83e6563f677d60b2b5a81df18bb6143b GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.231.wasm b/wasm-spec-tests/generated-tests/wasms/const.231.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.233.wasm b/wasm-spec-tests/generated-tests/wasms/const.233.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.235.wasm b/wasm-spec-tests/generated-tests/wasms/const.235.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnei=_b$&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof Mukcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`U-phwcWDy(8j`z#5A^B3eek>&IR}${P+P3d6e}K<_ zvola}SR+jbKE&kk2)ivF!o~i!Y27(aagND)7KMS9& zNp!*yPey4`c@YH!50QkHP~Sa3~i|UA~V&!V>1;6Nbrv^n&$*57CHO>U7F8V&B4C1=r-oyn=bmYE)__?mBwfiZ3;! zvdxOTf@hLf5EK=(DePk*#pE%vO*B3R;ab#y#T=Axmr&`<0vmp+f*Y<>Xv1EinQpT+ z=?p6}(Y*tW;lytk#7+UHK>lOQb&9-%Dht}9nJS|Wh4vQvSV}qBhv)kD`e7kI-^s4M NxRlqRV+SJw@E41>QXK#Q literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.239.wasm b/wasm-spec-tests/generated-tests/wasms/const.239.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4e09dd9afa8f5a5a69edef7a75cfbd894b65ce87 GIT binary patch literal 580 zcmYL_zmC)}5XR?^9ed+Mn+hS(jF&Bzf`TS1u3-bz6uiJCLRoRUx7;2%A&^$_6_gZ| z=pKdY-h~%oaum4v?6K$f&1dL_0|EdpTuUiI%PA#HEkKKU0z9=mj^o3QB60ueOVM8q z7gy)qF!Y~q0H#uQ=nq4G1IXSHaYkT`#UmnGM!@V5Cv0x-AtY$-{);OKw_t5|JYIeS zpZ{WKpyE&?rl-(U`vo*mQ_+CHii#CM<95y0>xCA-Z>DNZx2msHe{2Fl2=G?J=sMno zkJcnQ;fN=rw5Ys@0)qQULQ80V-b3Vn&)@xd6HR5K6%zZBz0foEF_Y|fbmGKx(Tk5W znF&`;Ik~>ecQHsfFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yx(msfeG)b!Q5}a2~oLYPB^a2$-?a<0a0<}^l xa4UI$H)%8tE2nE#KD&j_UFPyu(i?u}W|c}+MLH^0-a5O$nY9I_rB#&!{s19ZG^hXo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.240.wasm b/wasm-spec-tests/generated-tests/wasms/const.240.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.241.wasm b/wasm-spec-tests/generated-tests/wasms/const.241.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.242.wasm b/wasm-spec-tests/generated-tests/wasms/const.242.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.243.wasm b/wasm-spec-tests/generated-tests/wasms/const.243.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.244.wasm b/wasm-spec-tests/generated-tests/wasms/const.244.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.245.wasm b/wasm-spec-tests/generated-tests/wasms/const.245.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.246.wasm b/wasm-spec-tests/generated-tests/wasms/const.246.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.247.wasm b/wasm-spec-tests/generated-tests/wasms/const.247.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.248.wasm b/wasm-spec-tests/generated-tests/wasms/const.248.wasm new file mode 100644 index 0000000000000000000000000000000000000000..291bcd1312308b512ceb78093f480868180d3153 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pne_i2E`v-ruo z%qQyTf1h0AlUG)MCPDe7gj8s8pGqy&ty0jC20Bn_ zO5;@auG*%kae`6&NU=9yYlt;umz=tZZD%~E{tZSZG~=M|6-KFO$*6^vH!1K!!_Yz+ z+f6wbc%W5-XsBpIahqzbdyh_h=I$|wv}y*TZfATyL1Q~B=JM2p=F*t(T!KLhI~Fsx z9j5G3`3@GN)G!yQ?*sOM!iQAZ7S#|<5pBjYHO?Gro2|ELsKeeqKDWQO4~x~sMmMX= MD}4=HJ33Y1FO4Zu9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.249.wasm b/wasm-spec-tests/generated-tests/wasms/const.249.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62a7079ee1b4c640d83b9c25d69e4cd41332ff6f GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIBuXxVs~6iU0y$`drd9+Bnz^!okZciGiGdu8>nB`Uv=mel literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.25.wasm b/wasm-spec-tests/generated-tests/wasms/const.25.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2927f0e27876d386b716d437f27c8791ce7d941b GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yHOZy-?(j=+IOK@H}acb?g(+gDWv_mTw3DioJ xz^&u~-lWkqtemb{`Ro=xcbUsuNpJX>n^h`R73rv0dF$)~XVw;!mR3~`_yb(nH7Ec8 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.250.wasm b/wasm-spec-tests/generated-tests/wasms/const.250.wasm new file mode 100644 index 0000000000000000000000000000000000000000..780b095b83e6563f677d60b2b5a81df18bb6143b GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yrep5?0$f@apZFa-sTtbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.251.wasm b/wasm-spec-tests/generated-tests/wasms/const.251.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.253.wasm b/wasm-spec-tests/generated-tests/wasms/const.253.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.255.wasm b/wasm-spec-tests/generated-tests/wasms/const.255.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.257.wasm b/wasm-spec-tests/generated-tests/wasms/const.257.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.259.wasm b/wasm-spec-tests/generated-tests/wasms/const.259.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnev!wwJ&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof MukOV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.261.wasm b/wasm-spec-tests/generated-tests/wasms/const.261.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ab71fc884651980018879a3ed28aa764e06951c0 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwTcp7UsVR7Y*h0359TNvf2&CvP1tkR~ z%A-)_U3d}Z+)(|yGdtfu|6+CA695{AC3hW`(sdnmOJGTM1Klm9ZQIj{Gt2t(*J^!z zyu7|x9gpiTw?JPi_Urv|eG8Hpn5AHN=jlL1UIcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`UbNHWG%lB%GnSHbro04}WH-=hDP7k+o;b0rKYy*)*T>82 zi`DVC{&EZSrDDI{AJ?}a2_>@>4DUQ0h{y|piYJn(y?a2+X#f0|a>%rS_p8I<>N`U9 zTS|vU;*2Q2K-=ubXfflug<{I}l+l*k_S?8b;ft5Z%uzLA|pnei=_b$&*CTV zGM}iUlQUW}ULu9kF0t|i?XL$UIsflbXeJZt7w@N`n8t6c! zDUDOvyK0-F#tBC8BgNi;ts&NsU2^Isww>{u`ZpMv(2Rq+R~V(DC8HKv-lV__4MPiQ zY&Yd#;DJ^RqM@P<#cis!?mas3nY+gz(yAGVx}EX;1dZ*in9EZWnoDECa|s45>{!g$ zc9^nDcd_}u>9J}g!j8{Mof Mukcm!~E)m)eBq5)E3| zv6!*#FlCp+TUd;saV}8b2kZmI54p50$|33^*^FhXojFuCTW#}DhrNAzW`A!VmdcBb PZdR99`U zCR{n?#4L3>jBFE)k3qN*HDED&<=Z7xItf)DLeFsp}zrS?}#`fu*TvM5iKKN_J9*Mw|5W{G(Y}}D+#w?ZFf9g zeg>a^XJ??|P$QcG*DB~fWV516+z>6&8O>y7Qbw!YE8GQFI2y70znAyTEpmS z|AcqeBs$@UC!@5eyodsV`$$4dXujP+}Pc1#B|Y% zk29GGS57&(zRPzpNLa!=yu~mXkY2D}@ID$bOPx-6M(i2PRj?*6<|)i$)}T@|ao5q) zMtrFum2Fn!6+Dx?f}p6NO<@-cDJGARZKCl$2sfezEM~8KyM#(-7FhE`6xYH> Rd@I}T;!>W0jvb5$z+Y@iQ-S~h literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.266.wasm b/wasm-spec-tests/generated-tests/wasms/const.266.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9151faaa33110d1aaf048fc0cec5e1bd1b7ed907 GIT binary patch literal 580 zcmYL_zmC&D5XR@vu6N_L6;}v}W;Ub<1qF>GXo%sSfEPGh$Pt%ZxEwwqkRtCDloXUF z9);@OgjZplhU(j$+4;@)Ep)>H0RR`SrIeuMloF;Ephdj_o?0Hq@qD64+<*RB^f$xR z&1E+X{g*p{sgxc1!_eOWvUfzB5m;mKh=`UEFnhuYoBKxy37X&k#g&9xu(mrMufK!O zAJ`eFIMj&gIW*ON0S(ktG$62|VnxunUGwdBp~WAYsan&$>RZ*Hn?Mi(Tuf=y{TM!3 zljwvao{Z9>@*)Zd?js2;q51U)kuT1#AO60Nrn1oriG9sp=mqOx$hsv=Luw zNM)N9c?HiTuOKKY=up_jLW*g}$Trb<4#JJ-0v5AZzFk74o(0zYR0Y>usnD9eLNh&P zHK~Ucndshu#&F`-3}UB%Qy~8#=ISCZp~`~JXr{{OhC*kHT`Z-X)`w^M_xfQWzud~U OySkQFptge%0r&@F#Ztcj literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.267.wasm b/wasm-spec-tests/generated-tests/wasms/const.267.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2ea58adb0da3223e4f395640eb9356ad54cb52b2 GIT binary patch literal 580 zcmYL_zityj5XR@v?(O>aPQD5u(aahbrl6p)MH+mNC*TEgCv+CEW8!cT0?E2fK}kUw z+J27!fHT)nO3-jh2~z{mpxywF4G+U`I#DF= z>;CfkqV4i7)-6Mnq^}~O0CE*6FZ4Za5 zZ{YKLb_OaAOT_dX>S{NG8kSVlAh4ifK~TGG{q<(1#qaB}x}-bRH>y9@fgl7pAJeG& zzu}`biHYtAg`TX?y_n&vsR5n^6v9H++y$`j#gM>Lu!v_rG0@4O+gLl!0nX5bH8L?+DRly~BF)v{nvl^9}iMxrO z*5XSIscf?#ui%N~6$C{E9SYl6NHOjh*d`iILAVxOz+!gFw{xh}v%rdGXo%sSfEPGh$Pt%ZxEwwqkRtCDloXUF z9);@OgjZplhU(j$+4;@)Ep)>H0RR`SrIeuMloF;Ephdj_o?0Hq@qD64+<*RB^f$xR z&1E+X{g*p{sgxc1!_eOWvUfzB5m;mKh=`UEFnhuYoBKxy37X&k#g&9xu(mrMufK!O zAJ`eFIMj&gIW*ON0S(ktG$62|VnxunUGwdBp~WAYsan&$>RZ*Hn?Mi(Tuf=y{TM!3 zljwvao{Z9>@*)Zd?js2;q51U)kuT1#AO60Nrn1oriG9sp=mqOx$hsv=Luw zNM)N9c?HiTuOKKY=up_jLW*g}$Trb<4#JJ-0v5AZzFk74o(0zYR0Y>usnD9eLNh&P zHK~Ucndshu#&F`-3}UB%Qy~8#=ISCZp~`~JXr{{OhC*kHT`Z-X)`w^M_xfQWzud~U OySkQFptge%0r&@F#Ztcj literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.269.wasm b/wasm-spec-tests/generated-tests/wasms/const.269.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2ea58adb0da3223e4f395640eb9356ad54cb52b2 GIT binary patch literal 580 zcmYL_zityj5XR@v?(O>aPQD5u(aahbrl6p)MH+mNC*TEgCv+CEW8!cT0?E2fK}kUw z+J27!fHT)nO3-jh2~z{mpxywF4G+U`I#DF= z>;CfkqV4i7)-6Mnq^}~O0CE*6FZ4Za5 zZ{YKLb_OaAOT_dX>S{NG8kSVlAh4ifK~TGG{q<(1#qaB}x}-bRH>y9@fgl7pAJeG& zzu}`biHYtAg`TX?y_n&vsR5n^6v9H++y$`j#gM>Lu!v_rG0@4O+gLl!0nX5bH8L?+DRly~BF)v{nvl^9}iMxrO z*5XSIscf?#ui%N~6$C{E9SYl6NHOjh*d`iILAVxOz+!gFw{xh}v%rdGXo%sSfEPGh$Pt%ZxEwwqkRtCDloXUF z9);@OgjZplhU(j$+4;@)Ep)>H0RR`SrIeuMloF;Ephdj_o?0Hq@qD64+<*RB^f$xR z&1E+X{g*p{sgxc1!_eOWvUfzB5m;mKh=`UEFnhuYoBKxy37X&k#g&9xu(mrMufK!O zAJ`eFIMj&gIW*ON0S(ktG$62|VnxunUGwdBp~WAYsan&$>RZ*Hn?Mi(T#%+w_ha~E zO`;Qycrr?h%8MuHM7}t`e)#)7n#x8iB=$9Xp%?69CfT3p#EI#m7awOb z6Rw*pphIC73n``@BilsdIS4nR3s}rv`F07FdKOsoQx#lur9x}=3eEJG z)ubL)WTJZq8pDZSGl-o6PJ#S~n5&DtgenUaPQD5u(aahbrl6p)MH+mNC*TEgCv+CEW8!cT0?E2fK}kUw z+J27!fHT)nO3-jh2~z{mpxywF4G+U`I#DF= z>;CfkqV4i7)-6Mnq^}~O0CE*6FZ4Za5 zZ{YKLb_OaAOT_dX>S{NG8kSVlAh4ifK~TGG{q<(1#qaB}x}-bRH>y9@fgl7pCrzX7 z|Avp&Bs$`NN29c;yodsVyGTNFsDC~}NSeI5BPX z;^Ran!j)4_uJ7_~3=-xr4IeO!3rHKR4cChjJB zT8l3=q_WL|yn-i^R}d5xbSP|NA;q|3V4G+-1>stB0gKrw-_D^@&jKrcs)8%7RA|Ls zp_v}DC8>u6ndshv#&F_S3}VNCV<7)N=ISCZp~`~JXr{{OhC*kHZ7ii6*N12N_xfQW Szu3s8y}XiFptge%0r&@RE>na6 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.272.wasm b/wasm-spec-tests/generated-tests/wasms/const.272.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4ae4bb169861c02ec45e3fb3ed9b994d73bb27fc GIT binary patch literal 580 zcmYL_zmC)}5XR?^9ed+Mn+hS(jF&Bzf`TS1XxIQxK#g>XP*&XTEw@Kb2&7ef1trCm zCmx0BUW2z`aum4v?6K$f&1dL_0|EdpTuUiI%PA#HEkKKU0z9=mj^o3QB60uuYtdg0 z=a*;QF!W!p0j5%R=nq4G4anXRaYkT`#UmnGM!@V5Cv0x+AtY#i{TEjfZo%5_c)a)y zKEGpUpyE&?rl-(U`vo*mQ_+CHii#CM<95xrtA!SSY^G{WH>$5ye{KRn2=GqB=sNb{ zlQoG>IO54DEh;affZ#ro&=Q*4dx-q+`G-Gmqp57PLSkRC7kb7%W|IAmPMnx7dhu~4 zGvUf9C)aoRE(Qrpn1_!TCIiw7)(hT8BW9`7DbI*~1#=aw$%}ao^O!ZL)J)t}^t2IQ zYDi_96?p~EB(ESSDri&K#X^e7V`Q6XdBi&0gd6ruNlNn0jEIzeav-=yo4$X+M}5&qYj1k7Q0wVIoXFN`uF-_AwS#7 PwmZL&7ocMYBLeUj1FBMU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.273.wasm b/wasm-spec-tests/generated-tests/wasms/const.273.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7d10fb1ff7a6b544d92851a65b00b0343d78555b GIT binary patch literal 580 zcmYL_zmC)}5XR?^9ed+Mn+hS(jF&Bzf`TS1u3-Z_0WWZgP*&XTEw@Kb2&7ef1tkR~ z;vskds(Tqa9)ihH;O4W(p5Hg0p&Jee0Jv~1r35XflrXgbE$RvI)bcov_dANj{rita ze>GfOop-~~f4BjdO4*@54E+rtdq>0>fi)J7h-euBvj?28xxIssp!xA%TuHbEYrEs| z@-z7SJ39jvhZ-?GhNjvtpn;l-1_V}AtOy#nYd&2swD@H+RcpFceWChw69__p*BVCG z@ppJ{u=bu;6R5n^6vCr8HJz*a+$$mvAPD~fQ z_&Af9aOISf>$`jxgM=l_!&?lK0qF(n1@EH~v()L7XT+YtTm@_LVxGc0W(_Je6L%dw zZN!%vQrTujUcocTD+r1T+7x!NkYe%}*(MtAgK#5iz+(2ww@avWW`Q+7RKYb@Dzs*= z&`h^kO*+GhOmr_nV>t0^2C-AXDUg2?bDbhDp~`~xXr{`jL!rIJE|yYG_TiEKy?$88 S&$qJeE-vL6=-9!C0Q?0uoKsi; literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.274.wasm b/wasm-spec-tests/generated-tests/wasms/const.274.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a8e0bf9a05387371ed117e52831ad8548003767f GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxLC2eHpFPDM*fEyUlZz)K0W zhE%qlaZvC`$_7zUQHSC-RZXfQa}d*t8W^!V<+~{w-C3|Ok5y=48WmocpwL2( z#hi7A8QbLFKx23b3j=XOz#&k0mrC8DtkD!vXEak|)uGbaYMW}Q2mAO$|6V^VmX{mZ Otgo)+1$6CbMSy<=98z=u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.275.wasm b/wasm-spec-tests/generated-tests/wasms/const.275.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1014319e04f81858c3ad57313a4a0a9b2950f961 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@Ede=+glE zKk>bHnUB=b(HSinFOfoNn^<{__WJ{pT%2D2`uiri#wV|={-p%vXA)AO#qU&VscxBq zhBVNDN>duAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbL!7=WYn2)6)hRH(DF6~ zo@*FdNMpMR2LlhZY7h+-Z76P1t#$9wiO<}ff=H`oAnLZp_hU4+vtlNXO=u>K3C|=L zw6J3_W!quGE|srgF-i?Hf%-mRA1J&{m2FWC(G<~UEK}pmp|;t2lZHC%?c)>sd;73h SU9NS#yt>vGu(hL81^xjz4pUhG literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.276.wasm b/wasm-spec-tests/generated-tests/wasms/const.276.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a8e0bf9a05387371ed117e52831ad8548003767f GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxLC2eHpFPDM*fEyUlZz)K0W zhE%qlaZvC`$_7zUQHSC-RZXfQa}d*t8W^!V<+~{w-C3|Ok5y=48WmocpwL2( z#hi7A8QbLFKx23b3j=XOz#&k0mrC8DtkD!vXEak|)uGbaYMW}Q2mAO$|6V^VmX{mZ Otgo)+1$6CbMSy<=98z=u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.277.wasm b/wasm-spec-tests/generated-tests/wasms/const.277.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1014319e04f81858c3ad57313a4a0a9b2950f961 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@Ede=+glE zKk>bHnUB=b(HSinFOfoNn^<{__WJ{pT%2D2`uiri#wV|={-p%vXA)AO#qU&VscxBq zhBVNDN>duAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbL!7=WYn2)6)hRH(DF6~ zo@*FdNMpMR2LlhZY7h+-Z76P1t#$9wiO<}ff=H`oAnLZp_hU4+vtlNXO=u>K3C|=L zw6J3_W!quGE|srgF-i?Hf%-mRA1J&{m2FWC(G<~UEK}pmp|;t2lZHC%?c)>sd;73h SU9NS#yt>vGu(hL81^xjz4pUhG literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.278.wasm b/wasm-spec-tests/generated-tests/wasms/const.278.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a8e0bf9a05387371ed117e52831ad8548003767f GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxLC2eHpFPDM*fEyUlZz)K0W zhE%qlaZvC`$_7zUQHSC-RZXfQa}d*t8W^!V<+~{w-C3|Ok5y=48WmocpwL2( z#hi7A8QbLFKx23b3j=XOz#&k0mrC8DtkD!vXEak|)uGbaYMW}Q2mAO$|6V^VmX{mZ Otgo)+1$6CbMSy<=98z=u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.279.wasm b/wasm-spec-tests/generated-tests/wasms/const.279.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1014319e04f81858c3ad57313a4a0a9b2950f961 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@Ede=+glE zKk>bHnUB=b(HSinFOfoNn^<{__WJ{pT%2D2`uiri#wV|={-p%vXA)AO#qU&VscxBq zhBVNDN>duAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbL!7=WYn2)6)hRH(DF6~ zo@*FdNMpMR2LlhZY7h+-Z76P1t#$9wiO<}ff=H`oAnLZp_hU4+vtlNXO=u>K3C|=L zw6J3_W!quGE|srgF-i?Hf%-mRA1J&{m2FWC(G<~UEK}pmp|;t2lZHC%?c)>sd;73h SU9NS#yt>vGu(hL81^xjz4pUhG literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.280.wasm b/wasm-spec-tests/generated-tests/wasms/const.280.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a8e0bf9a05387371ed117e52831ad8548003767f GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxLC2eHpFPDM*fEyUlZz)K0W zhE%qlaZvC`$_7zUQHSC-RZXfQa}d*t8W^!V<+~{w-C3|Ok5y=48WmocpwL2( z#hi7A8QbLFKx23b3j=XOz#&k0mrC8DtkD!vXEak|)uGbaYMW}Q2mAO$|6V^VmX{mZ Otgo)+1$6CbMSy<=98z=u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.281.wasm b/wasm-spec-tests/generated-tests/wasms/const.281.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1014319e04f81858c3ad57313a4a0a9b2950f961 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@Ede=+glE zKk>bHnUB=b(HSinFOfoNn^<{__WJ{pT%2D2`uiri#wV|={-p%vXA)AO#qU&VscxBq zhBVNDN>duAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbL!7=WYn2)6)hRH(DF6~ zo@*FdNMpMR2LlhZY7h+-Z76P1t#$9wiO<}ff=H`oAnLZp_hU4+vtlNXO=u>K3C|=L zw6J3_W!quGE|srgF-i?Hf%-mRA1J&{m2FWC(G<~UEK}pmp|;t2lZHC%?c)>sd;73h SU9NS#yt>vGu(hL81^xjz4pUhG literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.282.wasm b/wasm-spec-tests/generated-tests/wasms/const.282.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a8e0bf9a05387371ed117e52831ad8548003767f GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxLC2eHpFPDM*fEyUlZz)K0W zhE%qlaZvC`$_7zUQHSC-RZXfQa}d*t8W^!V<+~{w-C3|Ok5y=48WmocpwL2( z#hi7A8QbLFKx23b3j=XOz#&k0mrC8DtkD!vXEak|)uGbaYMW}Q2mAO$|6V^VmX{mZ Otgo)+1$6CbMSy<=98z=u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.283.wasm b/wasm-spec-tests/generated-tests/wasms/const.283.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1014319e04f81858c3ad57313a4a0a9b2950f961 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@Ede=+glE zKk>bHnUB=b(HSinFOfoNn^<{__WJ{pT%2D2`uiri#wV|={-p%vXA)AO#qU&VscxBq zhBVNDN>duAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbL!7=WYn2)6)hRH(DF6~ zo@*FdNMpMR2LlhZY7h+-Z76P1t#$9wiO<}ff=H`oAnLZp_hU4+vtlNXO=u>K3C|=L zw6J3_W!quGE|srgF-i?Hf%-mRA1J&{m2FWC(G<~UEK}pmp|;t2lZHC%?c)>sd;73h SU9NS#yt>vGu(hL81^xjz4pUhG literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.284.wasm b/wasm-spec-tests/generated-tests/wasms/const.284.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.285.wasm b/wasm-spec-tests/generated-tests/wasms/const.285.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.286.wasm b/wasm-spec-tests/generated-tests/wasms/const.286.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.287.wasm b/wasm-spec-tests/generated-tests/wasms/const.287.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.288.wasm b/wasm-spec-tests/generated-tests/wasms/const.288.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.289.wasm b/wasm-spec-tests/generated-tests/wasms/const.289.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.290.wasm b/wasm-spec-tests/generated-tests/wasms/const.290.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.291.wasm b/wasm-spec-tests/generated-tests/wasms/const.291.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.292.wasm b/wasm-spec-tests/generated-tests/wasms/const.292.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.293.wasm b/wasm-spec-tests/generated-tests/wasms/const.293.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.294.wasm b/wasm-spec-tests/generated-tests/wasms/const.294.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.295.wasm b/wasm-spec-tests/generated-tests/wasms/const.295.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.296.wasm b/wasm-spec-tests/generated-tests/wasms/const.296.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a1ec308364829fcc0c30105e4527e21bd9b948a3 GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNt89gkXvQH$C@5$WK|>bq38;}S5!#4LE?kbB5J=Jb3Q7t} z#G_E%Yw$MArlI=n8PE66Z>*1d0zebL;+(NEIcLf%U`2WZomQsr`}2tto9@$>s=GN} z-CVAZ$L{kTFqDdYw?B4wAQL>ZDHzT=IuMaF1S%exOzr&xVn+M>zxbMI1LxL136bl$S^#v`Z{JMf>vs$y}UYzyJF-*~TR&EbgTV!p}@dg%p317cX|5f`l}Z zk(kCSr_^`lHbse3jN=E2g8^&9Xv6H16+6}KlxM}g!dQjo9K=4yI2A1^wGe-s0xu=h z8dBMI#zDa&DH}vZMIDOUR7o{>^u}fG&p}KpYGB0fl<%f!bZ5cBJXWEFX;gS&fK9_-^2{d@heSYB>q Pv%b2P7tpn%6#@PM298p7 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.297.wasm b/wasm-spec-tests/generated-tests/wasms/const.297.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19184f06439255d925ad1ce0ae2dc858025ad1a5 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@EdeU`qq+ z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1^fKyrk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.298.wasm b/wasm-spec-tests/generated-tests/wasms/const.298.wasm new file mode 100644 index 0000000000000000000000000000000000000000..50437c5eba5468e9100c775edf0acf64d3f4a929 GIT binary patch literal 580 zcmYL_v5wO~5QhJm*|j%bTXBVuXl6r-P*Bh$f`%CG38;}S5pu*O7cNIm2&Blqf|7y~ z@hDXH8oUkTG*tiY%+B}EzgQpl1b`;_iu)cb>HD7g6|f?^fle#wy6$}9#L|BHQnok8 ztDDR9@z{R81BOzzZ}-Rc4kRIGmW<(@rvnjrAyD>6dTQ<;5PLMg|4UvmZQ%X-aJc@4 zQ2dhIp_Vu&>Yt*icM~+2bJ;*K<8sDm@@@0=c4Ecv%b_~wd(+pZKbDaZBQC_!0Eaey z^seU{_5@sDZ6RB%y=J|5g+Q{VHy|V+ zL>z(x5bb5iI0Q9Lh<+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUzvWJM@Ede5K9B> z|HSv+Wj<0zM`yHTyhIA6ZDQpy+V2lYa&db7>+hT78lSwf`j--vpGioC7Qa)erMhJb z8qz=qDotse%HCC*6g7@<7T;0q4cHoD4cR8AZfx5bDhnF&ofsC$mHRJ3H&Ld)9} zc&=e+A&u=O91J|rszEeVw4u03wbs2yCq8p`3L>qVfvDRW-;dGQ&Wf2lHldj`COng1 z(87+zlx>FzyHvi0#V9q*1nT>MeW36*RklSnL{mhYu}qCKhuUWAO&aR3w~tTk@9o24 Sb-C8{^6FY&z}AjV75E1_@>5#? literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.30.wasm b/wasm-spec-tests/generated-tests/wasms/const.30.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cf16039aa138fc7d90764de21261eb365cc1b0e9 GIT binary patch literal 321 zcmYL@Jx&8L5QX2&*xnyUVk?A@knE5mC)h2C$wAl@D?~!b!bTA^>lBm}R7f0y8*nt7 zit3y9&FE>c8ny(0u1w1@qLmmU#TIDkl*VyH3hY_Br^BS%4G+7!)i87~d*GzZw%ZQf z9wbIHi&jcgPefV>WX>g0IR3&$gwKCu1?g4aKfb|~Kcp2Zu{BY=MyNJZ1k^kUaG3LC z&Is8$ygpBpd|#Yw&Bw%>#E*q#*c{96!`FCe??p!%CDnKd&MPNQZM=4RhKikbXyhV+ z8mSVvkvzbgG@6=~({olnyM@nP=JH0;8@_NwrBYRyj>@&S&dzXVZAocqRpo#`x;-<` literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.300.wasm b/wasm-spec-tests/generated-tests/wasms/const.300.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3973310cbd906f6a2daf53c8f53091b7b6ba0d1c GIT binary patch literal 580 zcmYL_zmC&D5XR@vu6N_L6;}v}W;Ub<1qF>GXovyv0KCB2LXNoP!sYM@ffRXDP*PAL z9);>&fj44&6m0YD&hGra`4+n2fB=9C*HTK*a!LtP3(%sT08cHC<9NTLNZfz?T=dt& z<@H534E?8DfT@%n`oqxQ0GQF##s1ox4ImeBmTgUJ7$pZ~m$rn1oriG9vq=n4CnN%lKBabmjY#mAY< zge#|*ppiN;H3n?a#k!_;!J_t9W1}tW;e7l57XBJrVLlswuW)M3CoC5iGG1n>b5~?g{k7lZjIuzPl>|!b9WFH>s-|L5k{9-HH O?(#~WfsP%F2*6)kHc|ip literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.301.wasm b/wasm-spec-tests/generated-tests/wasms/const.301.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a34da9ee7b71be78ea1067f6888b7cdc7195c28f GIT binary patch literal 580 zcmYL_zmC&D5XR@vu6N_L6;}v}W;Ub<1qF>GXo!I);04YWa>OMUE{9JDq{w>(B?Tqo zQK(Y!EIbC|qhOnFcXsFZ&9~4E2Lu3IxRz3amQzZYT7VYy1bAwB9LM_|MdJR$r=q_e zF0U`TVdy{J0!*ds&>x2W7LdIo;*7u=i$_GXjDXn#PT1U?AtY#i{ufsgZo%5_c)a=o zKL5eaK*ga(Opl?d_6umBrlJ9X6%{Lj#_gKVHw!I(-AvV*?o?l@e%l0s5a5l5nbz;{ z-kL-w9Pwn77L^xKKyV*PXbH{tGerLP{QT#2G?k53NbGa=LQmMoOtN3mi4)UBFFwv> zCR{n?#4L3>jBFE)_d&Q3HDED&<=Z7xI`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^d2=z1SM zS(E6910IdiqVggN2<{>Y&7uDF2$3((k57N!MN`>mg~YyMFZ7&!%q060oj5UV^y1@0 zCc>3dPOk6rZ446TFby9uj0U6^tQWkCM$BBNQ=Sp~8m20^BroO#Ok-A~QZsRP(bHOd zsUekZ7UUH?k-UPSsGv<@8w)8$kAZEX;T(i(Q3DpUQ@));r85hx_=yUxxKg1Ndxd7Y z&6cDyEXYLn7Bq$vzhV$O1{?$V4>8v%@)D{nXpd&9j5-wBTWn(~fh^!h5TwG PoA&xfUV@Gtj0nI#T&Pk3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.303.wasm b/wasm-spec-tests/generated-tests/wasms/const.303.wasm new file mode 100644 index 0000000000000000000000000000000000000000..89b0a433ac47896b2569f9a83538b82d6ac2cb42 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+qZc11 zG7+wva&mo_Z)1=!hiUkTVKgAUV7=g7G-BpDo$`#>H!xMfC3!I~VH&dLkcc3wx_!WcLG2j@;e~7tGk(W?qL3=b)Wz?b2-eMa|DM$P8O#fa#EaaCP Q*|b;J@(Oh9U_=1^0e&)4*Z=?k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.304.wasm b/wasm-spec-tests/generated-tests/wasms/const.304.wasm new file mode 100644 index 0000000000000000000000000000000000000000..99d019a5d1763a6fe1f0b72e0d887f3fdb7d139b GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^d2=z1SM zS(E6910IdiqVggN2<{>Y&7uDF2$3((k57N!MN`>mg~YyMFZ7&!%q060oj5UV^y1@0 zCc>3dPOk6rZ446TFby9uj0U6^tQWkCM$BBNQ=Sp~8m20^BroO#Ok-A~QZsRP(bHOd zsUekZ7UUH?k-UPSsGv<@8w)8$kAZEX;T(i(Q3DpUQ@));r85hx_=yUxxKg1Ndxd7Y z&6cDyEXYLn7Bq$vzhV$O1{?$V4>8v%@)D{nXpd&9j5-wBTWn(~fh^!h5TwG PoA&xfUV@Gtj0nI#T&Pk3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.305.wasm b/wasm-spec-tests/generated-tests/wasms/const.305.wasm new file mode 100644 index 0000000000000000000000000000000000000000..89b0a433ac47896b2569f9a83538b82d6ac2cb42 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+qZc11 zG7+wva&mo_Z)1=!hiUkTVKgAUV7=g7G-BpDo$`#>H!xMfC3!I~VH&dLkcc3wx_!WcLG2j@;e~7tGk(W?qL3=b)Wz?b2-eMa|DM$P8O#fa#EaaCP Q*|b;J@(Oh9U_=1^0e&)4*Z=?k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.306.wasm b/wasm-spec-tests/generated-tests/wasms/const.306.wasm new file mode 100644 index 0000000000000000000000000000000000000000..99d019a5d1763a6fe1f0b72e0d887f3fdb7d139b GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^d2=z1SM zS(E6910IdiqVggN2<{>Y&7uDF2$3((k57N!MN`>mg~YyMFZ7&!%q060oj5UV^y1@0 zCc>3dPOk6rZ446TFby9uj0U6^tQWkCM$BBNQ=Sp~8m20^BroO#Ok-A~QZsRP(bHOd zsUekZ7UUH?k-UPSsGv<@8w)8$kAZEX;T(i(Q3DpUQ@));r85hx_=yUxxKg1Ndxd7Y z&6cDyEXYLn7Bq$vzhV$O1{?$V4>8v%@)D{nXpd&9j5-wBTWn(~fh^!h5TwG PoA&xfUV@Gtj0nI#T&Pk3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.307.wasm b/wasm-spec-tests/generated-tests/wasms/const.307.wasm new file mode 100644 index 0000000000000000000000000000000000000000..89b0a433ac47896b2569f9a83538b82d6ac2cb42 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+qZc11 zG7+wva&mo_Z)1=!hiUkTVKgAUV7=g7G-BpDo$`#>H!xMfC3!I~VH&dLkcc3wx_!WcLG2j@;e~7tGk(W?qL3=b)Wz?b2-eMa|DM$P8O#fa#EaaCP Q*|b;J@(Oh9U_=1^0e&)4*Z=?k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.308.wasm b/wasm-spec-tests/generated-tests/wasms/const.308.wasm new file mode 100644 index 0000000000000000000000000000000000000000..99d019a5d1763a6fe1f0b72e0d887f3fdb7d139b GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^d2=z1SM zS(E6910IdiqVggN2<{>Y&7uDF2$3((k57N!MN`>mg~YyMFZ7&!%q060oj5UV^y1@0 zCc>3dPOk6rZ446TFby9uj0U6^tQWkCM$BBNQ=Sp~8m20^BroO#Ok-A~QZsRP(bHOd zsUekZ7UUH?k-UPSsGv<@8w)8$kAZEX;T(i(Q3DpUQ@));r85hx_=yUxxKg1Ndxd7Y z&6cDyEXYLn7Bq$vzhV$O1{?$V4>8v%@)D{nXpd&9j5-wBTWn(~fh^!h5TwG PoA&xfUV@Gtj0nI#T&Pk3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.309.wasm b/wasm-spec-tests/generated-tests/wasms/const.309.wasm new file mode 100644 index 0000000000000000000000000000000000000000..89b0a433ac47896b2569f9a83538b82d6ac2cb42 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+qZc11 zG7+wva&mo_Z)1=!hiUkTVKgAUV7=g7G-BpDo$`#>H!xMfC3!I~VH&dLkcc3wx_!WcLG2j@;e~7tGk(W?qL3=b)Wz?b2-eMa|DM$P8O#fa#EaaCP Q*|b;J@(Oh9U_=1^0e&)4*Z=?k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.31.wasm b/wasm-spec-tests/generated-tests/wasms/const.31.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5cbe12768dc481bafed19658710bedbad3c5c7d4 GIT binary patch literal 321 zcmYL@Jx&8L5QX2&*xnyUVk?A@knE5mC)h2C;UH{^6(S*IVWS9|bqY!fDkP4<4LBLX zsi?kr-;ACH%V9$R=)$xdBU*_uQfz^ij%gf6q`;n~d)!aD?Qp-nT@FL{yaSHPY`V?R z?LcBQvuLF>^+cqFK;~2;g~JbQMELkeR*+uy{lhCv`Au4(5?d3+ON44YML^Ay0EanG z=8TZ7!pqY%$+yMP)_h33N_<~fhRt#Fwg3D*w|Al=jgo4-1m~3#r`BFOJwwG#J2Y~Z zK#f!h+(;haO&U$j%IP^PpIyV}E^~P!=?!1FqEe}`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^d2=z1SM zS(E6910IdiqVggN2<{>Y&7uDF2$3((k57N!MN`>mg~YyMFZ7&!%q060oj5UV^y1@0 zCc>3dPOk6rZ446TFby9uj0U6^tQWkCM$BBNQ=Sp~8m20^BroO#Ok-A~QZsRP(bHOd zsUekZ7UUH?k-UPSsGv<@8w)8$kAZEX;T(i(Q3DpUQ@));r85hx_=yUxxKg1Ndxd7Y z&6cDyEXYLn7Bq$vzhV$O1{?$V4>8v%@)D{nXpd&9j5-wBTWn(~fh^!h5TwG PoA&xfUV@Gtj0nI#T&Pk3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.311.wasm b/wasm-spec-tests/generated-tests/wasms/const.311.wasm new file mode 100644 index 0000000000000000000000000000000000000000..89b0a433ac47896b2569f9a83538b82d6ac2cb42 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+qZc11 zG7+wva&mo_Z)1=!hiUkTVKgAUV7=g7G-BpDo$`#>H!xMfC3!I~VH&dLkcc3wx_!WcLG2j@;e~7tGk(W?qL3=b)Wz?b2-eMa|DM$P8O#fa#EaaCP Q*|b;J@(Oh9U_=1^0e&)4*Z=?k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.312.wasm b/wasm-spec-tests/generated-tests/wasms/const.312.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.313.wasm b/wasm-spec-tests/generated-tests/wasms/const.313.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.314.wasm b/wasm-spec-tests/generated-tests/wasms/const.314.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.315.wasm b/wasm-spec-tests/generated-tests/wasms/const.315.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.316.wasm b/wasm-spec-tests/generated-tests/wasms/const.316.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.317.wasm b/wasm-spec-tests/generated-tests/wasms/const.317.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.318.wasm b/wasm-spec-tests/generated-tests/wasms/const.318.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.319.wasm b/wasm-spec-tests/generated-tests/wasms/const.319.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.320.wasm b/wasm-spec-tests/generated-tests/wasms/const.320.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.321.wasm b/wasm-spec-tests/generated-tests/wasms/const.321.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.322.wasm b/wasm-spec-tests/generated-tests/wasms/const.322.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.323.wasm b/wasm-spec-tests/generated-tests/wasms/const.323.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.324.wasm b/wasm-spec-tests/generated-tests/wasms/const.324.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d8797b691d38369c7cb9652864b06ebc8781 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h^zkqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0A3nW0ssI2 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.325.wasm b/wasm-spec-tests/generated-tests/wasms/const.325.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cc72758b212ea11ff658e2c818714cd6026c2af0 GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Y;ke*#H0l literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.326.wasm b/wasm-spec-tests/generated-tests/wasms/const.326.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b6580a51b0d8a38b32926298d4ec138dc934eadd GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2p>NnsG=G3JRJ;(2#`_55NoDuFytYa^Z6934s)?Q&3V+ zqI(podj;Nz*)+KM?6K$f&1Y!)JpusETtg{A!zm?94M2l>0z5W648wUxk+}Q(wdij9 z>)Wfg@4GMe0AnfJcl*A(2W0PvI3uve;sFsYBVcyH3G34%gaq}&e{m(@2CQulhnw%< z^WW?YR2-Iw=^513ZU!|hsi;9f-As!=)?;-^C)GEqKi7dE1h`~Pqw9V6 zWKE(Y4tO+5i^_{AAh?SpG>7`vBSgMDKR*3^7fofO6%zZ3z0h;^F_Y|1bmGLc(Tk50 znFv=-Ik~>ew=qbV!!&%vFdC3vuwL*k8ZmR7PI*S`YnZCwlDwD~FpXJ_O3lRGMNez- zrG`|tS&&!oMDhxPqJlPsZ7if1JqEUkhI0_EMGaWYPWg5YmCh`%;wLJ&;!1^9>=l~n zHd~U;upkrNThJIz{E9*B7;p^aKg3+8$V;fQpgo$YGU`xhZ?TP~l%suks(-H^7V@i& QY})G^c?mjpFd_i|0AGw!0{{R3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.327.wasm b/wasm-spec-tests/generated-tests/wasms/const.327.wasm new file mode 100644 index 0000000000000000000000000000000000000000..01b053d9ca132eb8b839089eb5c57c5208be432e GIT binary patch literal 580 zcmYL_zm5|z5XR?^y>`~S%2o)8W*kz4f`TRyG-TnPfET!3p^doY!sXZ#0x4QwK}m7t ziASMI#k24j%%;K3XOBIK}b;l`Y)~|+<>+1;c)#O zeE!JJK*eE+n4Uvj?PgHJl8PDx7E~+|Pw zpR7rA!~u^+X;FC*1q64Igyv8`oFMYW`SI!R`)Dc~t&rH)?1f&ikC|k@qZ22ljb415 z$V9ku%E|RzzKub`9H!wThS7lZg7t!T(TJJrbjmYg-@sG_m*mB~glWubRB9&fHhNl% zFEymH&4RpwCz4kX6cw~7Y-1tC=rOQOG@OHQEo#7GcFMPNsB~t56+czM6;~>>Vz1Cl zx7m_(h6S1E-hsw&;#Uk}$ADuX{~_i&MP5Rc1?|yHl~IR6dy8!>r5x?UGyQx0u#jJF QWYb<<%PY{agAoDv2Z0t++5i9m literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.328.wasm b/wasm-spec-tests/generated-tests/wasms/const.328.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6c9a62186bea12a50074d5c5880e9f3fa93a6ed9 GIT binary patch literal 580 zcmYL_zmC)}5XR?^9ed+Mn+hS(jF&Bzf`TS1XxMN(0WWZgP*&XTEw@Kb2&7ef1tkR~ z;wh-9?h$wp9)ihH;O4W(p5Hg0p&Jee0Jv~1r35XflrXgbE$RvI)bcov_dANj{rita ze>GfOop-~~f4BjdO4*@54E+rtdq>0>fi)J7h-euBvj?28xxIssp!xA%TuHbEYrEs| z@-z7SJ39jvhZ-?GhNjvtpn;l-1_V}AtOy#nYd&2swD@H+RcpFceX06&69__p*BVCG z&$IB(nnWiY@nn=1l^0P!a34u%3C*`Vi2U#QpWkQER5n^6vCr8HJz*a+$$mvAPD~fQ z_&Af9aOISf>$`jxgM=l_!&?lK0qF(n1@EH~v()L7XT-jMxeC_g#XN<1%oUZxQBKcnvU>vO|9u`fEV;j)*e?Yb+iS(J}&N4>)0Sdj}yw^W(p`l5h*wcE{tz zXYl!Vb_OaAHDY=UO|@S@12q*52&|}B5j1Yse7ag_@ylka)^w}-QuXU55QG44G>opF zzr%ZL5}k0wlTlh!UPJ-GeI%hJG~ezZ^1tUde_lsZ*=U8tK4&lVgni5;`xTuyFDp->j^AzSWYf!0~xU1-C zBfiv-$~G(V3Z6+`K~PlCrm%~J6qCouHqm$=gd0%<7PD8rT|%WZ3#|E}3a+_Qp*4Gj zX1dL4(iv7{qI(4z!--!rh@ApXf&AN;>lAqjRTi{IGgU?%3hga+v6OPM50CWk^}|Ab Rwv}ynej(35#|}mW;4c>9Q#t?u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.330.wasm b/wasm-spec-tests/generated-tests/wasms/const.330.wasm new file mode 100644 index 0000000000000000000000000000000000000000..339f3b36b1de12c5a575693baddd4adeca896696 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUz>iLM@Ede=+gkd z&f|OUG9RgduAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbLwB=%!H;K)IG;pDq1pXq2+A~ zJl8O^kj8cs4h9}*)gT%w+ECo2TI=4U6Q8*|1(8!JHeae|Ki*`{!RQ4?6-tqjJGHV<9fMq6&$&o?70ex3K#Dc_sEHvKk_j2Lm=rvZNb zi66Yne58(!&S=Sai4;oP#L8o|-ye|V{Pg-&5=j*cxID*(RrMY}*;nsegqt6Pj{R_Z(-bXvwIBmNzNz zT*J^p8rw}c7R4$rieCUnHpyfwawO>G}K{lAD`IY+lR&K RVy)}t<(0mGtsR{z@DCVNQ#$|v literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.332.wasm b/wasm-spec-tests/generated-tests/wasms/const.332.wasm new file mode 100644 index 0000000000000000000000000000000000000000..339f3b36b1de12c5a575693baddd4adeca896696 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUz>iLM@Ede=+gkd z&f|OUG9RgduAvUk-cMU7*e#dj2Y1Ga`(L$=AO8{2lqbLwB=%!H;K)IG;pDq1pXq2+A~ zJl8O^kj8cs4h9}*)gT%w+ECo2TI=4U6Q8*|1(8!JHeae|Ki*`{!RQ4?6-tqjJGHV<9fMq6&$&o?70ex3K#Dc_sEHvKk_j2Lm=rvZNb zi66Yne58(!&S=Sai4;oP#L8o|-ye|V{Pg-&5=j*cxID*(RrMY}*;nsegqt6Pj{R_Z(-bXvwIBmNzNz zT*J^p8rw}c7R4$rieCUnHpyfwawO>G}K{lAD`IY+lR&K RVy)}t<(0mGtsR{z@DCVNQ#$|v literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.334.wasm b/wasm-spec-tests/generated-tests/wasms/const.334.wasm new file mode 100644 index 0000000000000000000000000000000000000000..056b8adbb44784f6a28e99097b7698e371b4613d GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb+qaI&orIefU(b zZVp#Bm&?Op_3;kqOT})rJFM6Ok7J6^|rSd;fr#(f<4|<&bF&@0a`i z^%sQdhm;PD#3@mJiniH~&|=DU3&n)%38O7H?dRK(6~E5=>Xh$IUz>iLM@EdeU`qr1 zI*;$Y%Y3Acj?QSwc!?BB+r-LawBH|)tLK@pmI2d@KRfA}#XhU(6YOQ;ZPJHI>6hvAz15vj%z8|BpofR{AY(g_>On4^2 zpoJZaDccSccBy;=i&1Kr3Doxi`#|Ass%(pDh^B}(W0@Lf4z5s6Zy%r7-`j`9 S>T<2?<<+&mfUO;!D)0~46H^)h literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.335.wasm b/wasm-spec-tests/generated-tests/wasms/const.335.wasm new file mode 100644 index 0000000000000000000000000000000000000000..bb2b486f8b753333d58b4728da0bbb0f17c30cc4 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yreo|UT*63wh}VG0TwThQQxJOM8dTgVo%W8&Z_0?E2fK}kW0 zcnWH&NW2V>!JHeae|Ki*`{!RQ4?6-tqjJGHV<9fMq6&$&o?70ex3K#Dc_sEHvKk_j2LmwmInCs zCw}lQ^N~6_I-@1yB~mDD6DyC=et$rc^V93Qzi*RkeDccbUrJDZCLtAC{7$8o>Xs>J zNCO?HG^KGWdsl5z)Hudjd{41AU~7mqWSgA2v2ABOr~VbrOlZnM-E*9!q9vmiTHd6< za}7faX>2#)VBmpP4Wgl<4aH5WweCGS@tM0*5NXv6MBUc-evHO;R?OtF3C*N2;h6-3 z7IrMAY&%TYrSc6dMyX*YP~Qja1BG{~vMs71nj+eaWon!`)HYjh(ol!JeSBhnZyy$` Ri?yzomsk1%wsv%?z&{zrQ#=3w literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.336.wasm b/wasm-spec-tests/generated-tests/wasms/const.336.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6100580ce676a19a9303af09ccbce91033ddab81 GIT binary patch literal 578 zcmYk2v5pfl5QhJmvDeOeqiltcXvQH$C@5$WL33He6Yv6;2qn@b7cNIm2&8EDiYqCo zDDFj&sP562O#^Ozd+hoC`Hj_aPXK5fmfUq%O4oJNErBK333OUY+qUN&XO{KnuhshI zcy)8RIv&?w?ts2j?AQC_`VJ&9FiXMk&eMU2yb!2(CLJ~RPe>h_$A1!rOdEK=IvlRQ zBbL7;IMkA6MBPg?^=^y?Gp-sard&-KP1rWyZpT)9SoGBy-PtwiNl5_8b-Cr6FyS9zd=TxzLO z2csl=m$tdmYJySvM5)KKU5H)Ct_MzRw(QlZe}|C?%{Z!ijZrQdGIXKgHb-7)99l%< zyD3Mr7-(4|oju%t9<5lE_8dbRH3Lz%GrpgoX7!4>JU5}a)FwQaXwbs8#f)u+DZ3or z!_owebAkFkpoP--F_$()IYeC~>q(kwXAYJ1R@*$(VIMKQu%EZ@O6BE7H>;~_eFGai HIaS~<>rqiK literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.337.wasm b/wasm-spec-tests/generated-tests/wasms/const.337.wasm new file mode 100644 index 0000000000000000000000000000000000000000..584eba1d1edf81cd672c876663a55e5049779170 GIT binary patch literal 580 zcmYL_zmC&D5XR@vu6N_L6;}v}W;Ub<1qF>Gt|11VfEPGh$Pt%ZxEwwqkRopiN(xHE zqfp(W@F>@o2gpUS@o6b_e~%O0p4nuX`RCd zYZ9Gs#FJ54R9-{@!F?p5B{V*=U8tzGN@-jD5@``yHJ)Fx<5npOZ zWt$aw1u2 z=?p6}(Y*$Z;l!^Q#7+UHK>l6Kb&9-%Dht}9nJS|Wh4vP^SV}qBhbQ{?`e7lz+{(7Q Nx|SE9V+SJw@E0KmQON)R literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.338.wasm b/wasm-spec-tests/generated-tests/wasms/const.338.wasm new file mode 100644 index 0000000000000000000000000000000000000000..39398791acd3942bc82f5360ee054288a8ebecd4 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IM%fA>(TqciP*Bh$g66X5o`4s)L?{uLT(}%LA&{c=6<1PF zA|8e69*IX_HVtlmd+hoC`Hj_aPXK6KE;(l`CFe|e2`tG@pwm*it~>8Iv8+FTt=G55 z>)Wf<@wonS5A>yCzuq6$_aF%+vlI;PJROM03xSGflBs=oLdzZc0hK6z#JZzU+dl8_25{-jb%b*mIKq=61p zn$kFxy{onvuQt$UA7eCF;PL|QciQMWU`pP;ds6?1uRLUU8!& z+YD27seBKMQEHeA)b|1VK;c8GY>H}#rij*KnHpyfwe{B9G}K{lA79wt+lR&KYNMOg N^^LxPjUAmT@DF>+QC0u| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.339.wasm b/wasm-spec-tests/generated-tests/wasms/const.339.wasm new file mode 100644 index 0000000000000000000000000000000000000000..93f865b9b74516c8df60db59a35d873d5fe672c1 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;;K($>l8nF zm-$E?9i7pV@e(PNwuzO;Xn#H;$<_HW{=Q4D@yRQze=R}zg@jaS@h6p9s#~U@Aq{k( z(v-%j>|M1R#d^6)hRH(DFV7o@*Fd zNMpMR2LlhZY7h+-ttoC&t#$9wiO<}fgGj4pAnLZp_hU3RvtlMsO=u>K3C|=Lw6JY4 zWt(BbE|qU#F-i?Hf%-mRA1J&}l}%9%(G<~oEK}pmp|;+7lZHC%?c+21d;73hU9WY$ Oyt&m^u(6|41^xjdc~Qy$ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.34.wasm b/wasm-spec-tests/generated-tests/wasms/const.34.wasm new file mode 100644 index 0000000000000000000000000000000000000000..305b7f512c84095b22e208e625f00516598b31aa GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yx(msfeG)b!Q5}a2~oLYPB^a2$-?a<0a0<}^l xa4UI$H)%8tE2nE#KD&j_UFPyu(i?u}W|c}+MLH^0-a5O$nY9I_rB#&!{s19ZG^hXo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.340.wasm b/wasm-spec-tests/generated-tests/wasms/const.340.wasm new file mode 100644 index 0000000000000000000000000000000000000000..39398791acd3942bc82f5360ee054288a8ebecd4 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IM%fA>(TqciP*Bh$g66X5o`4s)L?{uLT(}%LA&{c=6<1PF zA|8e69*IX_HVtlmd+hoC`Hj_aPXK6KE;(l`CFe|e2`tG@pwm*it~>8Iv8+FTt=G55 z>)Wf<@wonS5A>yCzuq6$_aF%+vlI;PJROM03xSGflBs=oLdzZc0hK6z#JZzU+dl8_25{-jb%b*mIKq=61p zn$kFxy{onvuQt$UA7eCF;PL|QciQMWU`pP;ds6?1uRLUU8!& z+YD27seBKMQEHeA)b|1VK;c8GY>H}#rij*KnHpyfwe{B9G}K{lA79wt+lR&KYNMOg N^^LxPjUAmT@DF>+QC0u| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.341.wasm b/wasm-spec-tests/generated-tests/wasms/const.341.wasm new file mode 100644 index 0000000000000000000000000000000000000000..93f865b9b74516c8df60db59a35d873d5fe672c1 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;;K($>l8nF zm-$E?9i7pV@e(PNwuzO;Xn#H;$<_HW{=Q4D@yRQze=R}zg@jaS@h6p9s#~U@Aq{k( z(v-%j>|M1R#d^6)hRH(DFV7o@*Fd zNMpMR2LlhZY7h+-ttoC&t#$9wiO<}fgGj4pAnLZp_hU3RvtlMsO=u>K3C|=Lw6JY4 zWt(BbE|qU#F-i?Hf%-mRA1J&}l}%9%(G<~oEK}pmp|;+7lZHC%?c+21d;73hU9WY$ Oyt&m^u(6|41^xjdc~Qy$ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.342.wasm b/wasm-spec-tests/generated-tests/wasms/const.342.wasm new file mode 100644 index 0000000000000000000000000000000000000000..39398791acd3942bc82f5360ee054288a8ebecd4 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IM%fA>(TqciP*Bh$g66X5o`4s)L?{uLT(}%LA&{c=6<1PF zA|8e69*IX_HVtlmd+hoC`Hj_aPXK6KE;(l`CFe|e2`tG@pwm*it~>8Iv8+FTt=G55 z>)Wf<@wonS5A>yCzuq6$_aF%+vlI;PJROM03xSGflBs=oLdzZc0hK6z#JZzU+dl8_25{-jb%b*mIKq=61p zn$kFxy{onvuQt$UA7eCF;PL|QciQMWU`pP;ds6?1uRLUU8!& z+YD27seBKMQEHeA)b|1VK;c8GY>H}#rij*KnHpyfwe{B9G}K{lA79wt+lR&KYNMOg N^^LxPjUAmT@DF>+QC0u| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.343.wasm b/wasm-spec-tests/generated-tests/wasms/const.343.wasm new file mode 100644 index 0000000000000000000000000000000000000000..93f865b9b74516c8df60db59a35d873d5fe672c1 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;;K($>l8nF zm-$E?9i7pV@e(PNwuzO;Xn#H;$<_HW{=Q4D@yRQze=R}zg@jaS@h6p9s#~U@Aq{k( z(v-%j>|M1R#d^6)hRH(DFV7o@*Fd zNMpMR2LlhZY7h+-ttoC&t#$9wiO<}fgGj4pAnLZp_hU3RvtlMsO=u>K3C|=Lw6JY4 zWt(BbE|qU#F-i?Hf%-mRA1J&}l}%9%(G<~oEK}pmp|;+7lZHC%?c+21d;73hU9WY$ Oyt&m^u(6|41^xjdc~Qy$ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.344.wasm b/wasm-spec-tests/generated-tests/wasms/const.344.wasm new file mode 100644 index 0000000000000000000000000000000000000000..39398791acd3942bc82f5360ee054288a8ebecd4 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IM%fA>(TqciP*Bh$g66X5o`4s)L?{uLT(}%LA&{c=6<1PF zA|8e69*IX_HVtlmd+hoC`Hj_aPXK6KE;(l`CFe|e2`tG@pwm*it~>8Iv8+FTt=G55 z>)Wf<@wonS5A>yCzuq6$_aF%+vlI;PJROM03xSGflBs=oLdzZc0hK6z#JZzU+dl8_25{-jb%b*mIKq=61p zn$kFxy{onvuQt$UA7eCF;PL|QciQMWU`pP;ds6?1uRLUU8!& z+YD27seBKMQEHeA)b|1VK;c8GY>H}#rij*KnHpyfwe{B9G}K{lA79wt+lR&KYNMOg N^^LxPjUAmT@DF>+QC0u| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.345.wasm b/wasm-spec-tests/generated-tests/wasms/const.345.wasm new file mode 100644 index 0000000000000000000000000000000000000000..93f865b9b74516c8df60db59a35d873d5fe672c1 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;;K($>l8nF zm-$E?9i7pV@e(PNwuzO;Xn#H;$<_HW{=Q4D@yRQze=R}zg@jaS@h6p9s#~U@Aq{k( z(v-%j>|M1R#d^6)hRH(DFV7o@*Fd zNMpMR2LlhZY7h+-ttoC&t#$9wiO<}fgGj4pAnLZp_hU3RvtlMsO=u>K3C|=Lw6JY4 zWt(BbE|qU#F-i?Hf%-mRA1J&}l}%9%(G<~oEK}pmp|;+7lZHC%?c+21d;73hU9WY$ Oyt&m^u(6|41^xjdc~Qy$ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.346.wasm b/wasm-spec-tests/generated-tests/wasms/const.346.wasm new file mode 100644 index 0000000000000000000000000000000000000000..39398791acd3942bc82f5360ee054288a8ebecd4 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IM%fA>(TqciP*Bh$g66X5o`4s)L?{uLT(}%LA&{c=6<1PF zA|8e69*IX_HVtlmd+hoC`Hj_aPXK6KE;(l`CFe|e2`tG@pwm*it~>8Iv8+FTt=G55 z>)Wf<@wonS5A>yCzuq6$_aF%+vlI;PJROM03xSGflBs=oLdzZc0hK6z#JZzU+dl8_25{-jb%b*mIKq=61p zn$kFxy{onvuQt$UA7eCF;PL|QciQMWU`pP;ds6?1uRLUU8!& z+YD27seBKMQEHeA)b|1VK;c8GY>H}#rij*KnHpyfwe{B9G}K{lA79wt+lR&KYNMOg N^^LxPjUAmT@DF>+QC0u| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.347.wasm b/wasm-spec-tests/generated-tests/wasms/const.347.wasm new file mode 100644 index 0000000000000000000000000000000000000000..93f865b9b74516c8df60db59a35d873d5fe672c1 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;;K($>l8nF zm-$E?9i7pV@e(PNwuzO;Xn#H;$<_HW{=Q4D@yRQze=R}zg@jaS@h6p9s#~U@Aq{k( z(v-%j>|M1R#d^6)hRH(DFV7o@*Fd zNMpMR2LlhZY7h+-ttoC&t#$9wiO<}fgGj4pAnLZp_hU3RvtlMsO=u>K3C|=Lw6JY4 zWt(BbE|qU#F-i?Hf%-mRA1J&}l}%9%(G<~oEK}pmp|;+7lZHC%?c+21d;73hU9WY$ Oyt&m^u(6|41^xjdc~Qy$ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.348.wasm b/wasm-spec-tests/generated-tests/wasms/const.348.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.349.wasm b/wasm-spec-tests/generated-tests/wasms/const.349.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.35.wasm b/wasm-spec-tests/generated-tests/wasms/const.35.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2927f0e27876d386b716d437f27c8791ce7d941b GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?s$yHOZy-?(j=+IOK@H}acb?g(+gDWv_mTw3DioJ xz^&u~-lWkqtemb{`Ro=xcbUsuNpJX>n^h`R73rv0dF$)~XVw;!mR3~`_yb(nH7Ec8 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.350.wasm b/wasm-spec-tests/generated-tests/wasms/const.350.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.351.wasm b/wasm-spec-tests/generated-tests/wasms/const.351.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.352.wasm b/wasm-spec-tests/generated-tests/wasms/const.352.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.353.wasm b/wasm-spec-tests/generated-tests/wasms/const.353.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.354.wasm b/wasm-spec-tests/generated-tests/wasms/const.354.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.355.wasm b/wasm-spec-tests/generated-tests/wasms/const.355.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.356.wasm b/wasm-spec-tests/generated-tests/wasms/const.356.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.357.wasm b/wasm-spec-tests/generated-tests/wasms/const.357.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.358.wasm b/wasm-spec-tests/generated-tests/wasms/const.358.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.359.wasm b/wasm-spec-tests/generated-tests/wasms/const.359.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.360.wasm b/wasm-spec-tests/generated-tests/wasms/const.360.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76e202c6f7ed84f0c01dcff6268008f85b339856 GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG0TwThQP`c>-P_wva7i$Hc)A0?E2dk&=Qk z%A-)_(U^0?HvjJI&iBv1SRMBSfW~3TU5BM~T}Ry#SdyJUr=_%Qd){$oS%3Rct#6K3 zHQFH%{)S-F$FJZ{Ef%mJ!;rbV1 z`6$7mmNX;kUZbgZV>Fm?)j%=jYRYKBw)uHGw&KI0ug>`1^rPwTMPj6c3$`@fE=V3fX4>J8W~#4co)ow|ulXFR9=14bq^- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.361.wasm b/wasm-spec-tests/generated-tests/wasms/const.361.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc20a276ae2f042f889bae53cbdcf127c63aa154 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMz|%?mer>(_3G|$ zb9cQw99EwnfWB1hR=dOM0VJVhmV)7(r#%sQAyDx|GPS2i#Eka$e<_DdYk0rh?{B{$ zRKKKjXe3UF@^iG!c7zsFu3IQ3Tu&HnxoN-NkF5B8-dCr5GJRwEV;&hX;)*SetyBEy zUFIWobaX~b#!IA7+9p;Wqy71aBvxo#wV|={duAvUk-cMU7)z#19mE1GWpX3)v>8Zfw&T&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw5GU8wbs2yCq8p`4kE3ZfvDRW-;dGQ%!-*jHKCa_COng1(89LG zlx>CyyHvh~#V9q*1nT>MeW36@RW?O6L{miTu}qCKhuV7UO&aR3w~x>4@9o24b-mX0 O^5#}w!N!hG75E1u>ru-9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.362.wasm b/wasm-spec-tests/generated-tests/wasms/const.362.wasm new file mode 100644 index 0000000000000000000000000000000000000000..160a7d05cb700aeb536550a1b048dbad9275450b GIT binary patch literal 580 zcmYL_v2GJV5QhJm*}Yxgp5?0$63wh}VG1N@Y=s6N@C3X-Y$033j){XK1d?@^f|7zV z%A-)_(U^;nsQ%rVop1hsu{!Pv0FA?vyADg~x{kUfuq3;IPD^Rq_VL7-W&Pz_wZ1xD zT%E6u$Mx46pf45s_5QfN0Z9zZQZT&pbRZ%x1S+0LN6qa6QitaLzl0&v2Hvj@hsz&` z<(&kFTGEWDdyb~wjnQDnRRhJ8t0|)i+vfZA*or?FeRamSrf*GuEfOOod=N_m)JUJb z>-a=1ot)9K@iHltcA1qYXnsE+%fIKZ-e*_)?3LA@NmPCzF&A3=$w7mBHpF0~2IB^tD_V=-g% zFlCp+J6MdMaV}8b2kZmIkGV7#Ld!ES2XQ-K;Jy L^)<|Pa;m^zuvk#9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.363.wasm b/wasm-spec-tests/generated-tests/wasms/const.363.wasm new file mode 100644 index 0000000000000000000000000000000000000000..95e75c2a3b7c0d78b33dc2ff1b3ad3f2e55aff49 GIT binary patch literal 580 zcmYL_F^&^K5Ji7gb{_5@sDZ6RB%y=J|5g+Q{V9S{-_ zB920|N8u>cI3fDoRbB7bZ!8Zx0zjj3!8v0gIcLfXU_o{R9T(Dd-TB0cW%cPxy}CQx z++8mZht=l?pf44>)$Xu*07)pBrC@mHX-`C62vj_gOzr6rF{AzcU&8i`Y){2Xnw9ihdP>lTU$*AqrtZrZQ+BP)KN_thz%Oy8LPm`6s8xDrbPG^hB{ zyUa)G=;(}=jF(8Ev`wr$M*H&-Nv_VX`R}{r8lSwf`qvVaUr0!W7JpKyrMhJb8qz=q zDotse%HCC*6g7@<5kFAu4cHoD4cR8AZfx5b&#Aw}g$YeLsC$WvRJ3H&Ld*LUc&=e+ zA&u=O91J|rszEeVw4u03wbs2yCq8p`4kE3ZfvDRW-;dGQ&Wf2lHKCa_COng1(87+z zlx>FzyHvh~#V9q*1nT>MeW36@RklSnL{mhYu}qCKhuUWAO&aR3w~x>4@9o24b-mX0 O^5#}w!PbsW75E1}nNi*V literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.364.wasm b/wasm-spec-tests/generated-tests/wasms/const.364.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5a6691eae03bd3df21d7b520ed74040f855c8382 GIT binary patch literal 580 zcmYL_v5pfl5QhJmv3H&IMzix%h zb$z(JzE~a(s}Hw8Un+L1-C=bLl29^B!SK%0o`}2Yqzcej*_iTKr6eH(i>c%#m@tpb>I5VLs2X#+zmWq~)T4;Hb z0?#!JEu^vCgoA+xS~ZAn6k|dtJ(j6)=1^O2y-7nI_V)3S{k?ry TtS;8NUS3}5GuYVCsRI81Ktoxq literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.365.wasm b/wasm-spec-tests/generated-tests/wasms/const.365.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fbaaf89ea977ee6785527e00c606d6515a2e196b GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNQMN)zG~$=m96Pxv?FV*_G zy}Z6ywe9-zEzp;W{d(W7Z$Tz_W>YYnb#x#iX9!e0F`1gXd&G?9_kZz2rVX519S&FD z5XxW1Thu1bi1KqZ^=^y?Gp-s4rd&-Kjo&t3Z^l~uzUZqnzEgdp`eP9pG2;C3v>qPg zM`tr1siUJ+T2fvjfzU3o@C41zdn9wN*@3?g?~<)ua>C+Xn;`tcgj7iJCwcK=S1CwH z0~v^^y>d!@S8h|3IKe1>px7I*UKqVFyJW>qbUNi(ac3B*(2RrFml&m@A*B}LZ&Kie zgrSC1ww-cN@IcBMQBhHw;x<)M^&XvZnY&XE(})@vu{-6v32L2LFgH(CXl`m1o|~Z1 zLbt_?b%rV1ix%h zb$z(JzE~a(s}Hw8Un+L1-C=bLl29^B!SK%0o`}2Yqzcej*_iTKr6eH(i>c%#m@tpb>I5VLs2X#+zmWq~)T4;Hb z0?#!JEu^vCgoA+xS~ZAn6k|dtJ(j6)=1^O2y-7nI_V)3S{k?ry TtS;8NUS3}5GuYVCsRI81Ktoxq literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.367.wasm b/wasm-spec-tests/generated-tests/wasms/const.367.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fbaaf89ea977ee6785527e00c606d6515a2e196b GIT binary patch literal 580 zcmYL_v5pfl5QhI5+iPdNQMN)zG~$=m96Pxv?FV*_G zy}Z6ywe9-zEzp;W{d(W7Z$Tz_W>YYnb#x#iX9!e0F`1gXd&G?9_kZz2rVX519S&FD z5XxW1Thu1bi1KqZ^=^y?Gp-s4rd&-Kjo&t3Z^l~uzUZqnzEgdp`eP9pG2;C3v>qPg zM`tr1siUJ+T2fvjfzU3o@C41zdn9wN*@3?g?~<)ua>C+Xn;`tcgj7iJCwcK=S1CwH z0~v^^y>d!@S8h|3IKe1>px7I*UKqVFyJW>qbUNi(ac3B*(2RrFml&m@A*B}LZ&Kie zgrSC1ww-cN@IcBMQBhHw;x<)M^&XvZnY&XE(})@vu{-6v32L2LFgH(CXl`m1o|~Z1 zLbt_?b%rV1Q8)@t zg`4O9ZGG8T4jTeM7p~)+(MiskatCyDRO2{81xJ?t>9y*&!^8G&ISl>F9ynTV({F}; z4-#jY#TsL2M?_W#S$=NgBXZ!t(m%h=`u*^@Uw6aMzaD|Ja=U&v^hc05 z%PiIyO9vvdLLhf3iQ?%OJ|TYpqnMKI4u_`?xblarK_$K>O1FsBc8-XeXAz1e&z6i> zY~uUNJj>73+17l@yvzJrd4{)$>DoVtO*BgG2og0I6*b#n)hB-pcb56@+{9qzU_t6}J#_Q26Heb*1& z9wbIHi&je0j)=4n$ec=~aQK3a2p|8*a?-2a?*0{~_#~}RiLHs^B|^2CBB16nz+uki zoDs5hczK*A^KEf-Yd$1iCB82#!)hu6KiuyN2^K)`~o2A BIh_Ci literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.42.wasm b/wasm-spec-tests/generated-tests/wasms/const.42.wasm new file mode 100644 index 0000000000000000000000000000000000000000..03667da52df52e696ee90c88a99f189285317cd3 GIT binary patch literal 325 zcmYL@F;2rk5JmsY?5<<4C0rqdgtQw{B-pcb56@+{9qzU_t6}J#_Q26Heb*1& z9wbIHi&je0j)=4n$ec=~aQK3a2p|8*a?-2a?*0{~_#~}RiLHs^B|^2CBB16nz+uki zoDs5hczK*A^KEf-Yd$1iCB82#!)hu6KiuyN2^K)`~o2A BIh_Ci literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.44.wasm b/wasm-spec-tests/generated-tests/wasms/const.44.wasm new file mode 100644 index 0000000000000000000000000000000000000000..03667da52df52e696ee90c88a99f189285317cd3 GIT binary patch literal 325 zcmYL@F;2rk5JmsY?5<<4C0rqdgtQw{B-pcb56@+{9qzU_t6}J#_Q26Heb*1& z9wbIHi&je0j)=4n$ec=~aQK3a2p|8*a?-2a?*0{~_#~}RiLHs^B|^2CBB16nz+uki zoDs5hczK*A^KEf-Yd$1iCB82#!)hu6KiuyN2^K)`~o2A BIh_Ci literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.5.wasm b/wasm-spec-tests/generated-tests/wasms/const.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ac972ab114a0b06e83e33fba1263a20660e50cd5 GIT binary patch literal 322 zcmYL@F;2rk5JmsY?5<;PBwQhcgftscti)+2>{)=j#EM>DJ4oB(9v0q&*-i4NoH!3!W|* zu~^6B>nxj}%d^|?Df2G#Yv~!jL_Fm=Ui(L}iAKpeL81nuqGl7U+Bs@gt7zpagIcLG wxRpsnaCvnN8?_5Ip}0qwXrYr;Ly!tsVyss!9y{Q%W0}47cBme*a literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.50.wasm b/wasm-spec-tests/generated-tests/wasms/const.50.wasm new file mode 100644 index 0000000000000000000000000000000000000000..65e07c445dfecc8815bed0901d9bf24a84f92b32 GIT binary patch literal 325 zcmYL@F;2rk5JmsY?5-29C0rqdgtQw{#*$cCino6YqjO#V(sh3pcB{;8~IJNZJ z=`l)n+M$-C1gfP>;93R&-lWk~tel>(^4U53z-4YwOM1l*-LO=tDo;oG!dqv@IIuRS Jw6v;pz#lUWH>>~v literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.51.wasm b/wasm-spec-tests/generated-tests/wasms/const.51.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fc2fac1e4c91485707153a86901c2cda088aa458 GIT binary patch literal 325 zcmYL@F;2rk5JmsY?5-29C0rqdgtQw{ql zJ3U6pPCL|ckU+JR30%t{z?(Fhij~t7Rz5q0AGpj7YDus7p&OPeRpsd@pL^@<7<<;{ Kl$KVN4)_CZjW{d- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.54.wasm b/wasm-spec-tests/generated-tests/wasms/const.54.wasm new file mode 100644 index 0000000000000000000000000000000000000000..03667da52df52e696ee90c88a99f189285317cd3 GIT binary patch literal 325 zcmYL@F;2rk5JmsY?5<<4C0rqdgtQw{B-pcb56@+{9qzU_t6}J#_Q26Heb*1& z9wbIHi&je0j)=4n$ec=~aQK3a2p|8*a?-2a?*0{~_#~}RiLHs^B|^2CBB16nz+uki zoDs5hczK*A^KEf-Yd$1iCB82#!)hu6KiuyN2^K)`~o2A BIh_Ci literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.58.wasm b/wasm-spec-tests/generated-tests/wasms/const.58.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b301d0308e8d7dbb7c66b4f12c5ff063b30a537 GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-VeBwQhcgftscfFlHrHw7gHSK$U6jZH=M z=D!(z4OYXJ0MM1|I3;wFQliuW9i7rRj>v%nOaJ^f?RUfD?tV24{p$fZDYxynLw^8? zv&>?Rv9u>5D+F@qk|-X3;S=KbKZ*(2)qel<0ayKyHK@fmMClr_-pmlu@H9fP;OT-9 zi*>gPD~zM{PJrdHq&FfKBz literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.59.wasm b/wasm-spec-tests/generated-tests/wasms/const.59.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f02a17119f76a6175037f9de2a42103e67849c19 GIT binary patch literal 325 zcmYL^F;2rk5JmsY?5<<4C0rqdgtQw{m1#Lfv=U>a*a9t0Y8*!-!JegidM&&C@UXwz3`6&F1SZS$T|ab3 zkQmJ@S}9EjBGN)2b1sp>=?69*)9CcWp36;s^W8(S1Lsn>8RLx>+Aw&))thOR#gu80|Xc| AB>(^b literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.60.wasm b/wasm-spec-tests/generated-tests/wasms/const.60.wasm new file mode 100644 index 0000000000000000000000000000000000000000..447941e8e75589ac61ab34c0a144468db25581de GIT binary patch literal 321 zcmYL@F;2rk5JmsY?5-WJC0rqdgtQw{_yl%I77l`4Scrs>fFlHrHw7gHSK$WSENm*O zH~-D(YtWAy0zg-$;~3FNjFDmobaYD7G$94{EW`6#Ic&$r?R`Iv!|NV6DYF?i5-A*hVI#u#Ke8F=ez$x2fGK`RD^y||qIiu^t>*}6xD0TpxvUu> zTZQ+Rd6J*YlWq8rc$4_Gv<#c$?sz=LOZy-?(j=+IOK@H}acb?g(+gDWv_mTw3DioJ xz^&u~-lWkqtemb{`Ro=xcbUsuNpJX>n^h`R73rv0dF$)~XVw;!mR3~`_yb*7H7Ec8 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.61.wasm b/wasm-spec-tests/generated-tests/wasms/const.61.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c0390411fa4efa0515dc903c5211646ca10d706a GIT binary patch literal 325 zcmYL@u};H45JYEp@6NH$60Q(JLb?kn@&$HD4)Gt@g@s562{=N~_)<_(@H6!M8JtDI zHg9KkH5zoomH^O&X*ou;5@V#;0xeBy97iO*p?^LAlV!I3cIXcv zF`8MlQkwQeq=i7{R3e4rH*7@s{706P?)LkKH<;p!v_d7eCW@B`)n<->n#%x(C6`M^ z$kyTYX`amY)#TQEOuS0`SXqWGar5&x@!Z~tjx~55QX2&*lTCK(QSngG~*DVP*Bh$h=wfm6tonV2omX%3zs7)BCP*PmY z-{242Ph)ZvRL`FAd~cpH-)#s04Z@5|!AwdiRA#`8>;~G;fyE8{u!Z*XQpV~*-x;w)Dk8MV@Iog+^*_AQ*T-H4-s zds??hhDtV+R=LsUG{XqP3kB6M1Yx6KPF&BGI6g9jh_h4kLCs zyo1FE8YcqvFXUgK_%YYEMcqeRC7ZEKtuu$lW}8*+YyV`Qp4y+=XQldlsmuArrM`l# Iot!H07xHFN9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.69.wasm b/wasm-spec-tests/generated-tests/wasms/const.69.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4e1ba3ddbe1316aed98232202dfb32f186e20bf9 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo&(hSba(g2a*pG(ciFW*du8>nxKTEnTxsG{XqP5J5i99x;iL@p>k!aA$j@6hg z!-!oDZ(%ip#)&}vbNN>&zR$I#sQYNEWINWWb>`66ZnMgL?Vs$^6MJ)etW;ktbveJh M(wDH<$*BT=0aYAQD*ylh literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.70.wasm b/wasm-spec-tests/generated-tests/wasms/const.70.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.71.wasm b/wasm-spec-tests/generated-tests/wasms/const.71.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.72.wasm b/wasm-spec-tests/generated-tests/wasms/const.72.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.73.wasm b/wasm-spec-tests/generated-tests/wasms/const.73.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.74.wasm b/wasm-spec-tests/generated-tests/wasms/const.74.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.75.wasm b/wasm-spec-tests/generated-tests/wasms/const.75.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.76.wasm b/wasm-spec-tests/generated-tests/wasms/const.76.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.77.wasm b/wasm-spec-tests/generated-tests/wasms/const.77.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.78.wasm b/wasm-spec-tests/generated-tests/wasms/const.78.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.79.wasm b/wasm-spec-tests/generated-tests/wasms/const.79.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.8.wasm b/wasm-spec-tests/generated-tests/wasms/const.8.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9c538d5bf766430ea47f97fdd41cca8ecf887631 GIT binary patch literal 318 zcmYL@F;2rk5JmsY?5-1UBwQhcgftscBXZ!t(m%h=`u*^@zwd^je?0Sa9S%<)aODqKgGzi&lx`8L?Hmy`&mt5{o-G-% z*u?jjd6u86v#t4*d6)UM@(gdWPS^fHY@$(eN06w&sHoWnt9F5k)hZgf%AiK73~po+ t5nLW!%|`8#O(@m~6D@SoNd6&Aby}HRRpz5|6TJEbF1#-(FTJT0_yc@3G9&;1 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.80.wasm b/wasm-spec-tests/generated-tests/wasms/const.80.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.82.wasm b/wasm-spec-tests/generated-tests/wasms/const.82.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.84.wasm b/wasm-spec-tests/generated-tests/wasms/const.84.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.86.wasm b/wasm-spec-tests/generated-tests/wasms/const.86.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.88.wasm b/wasm-spec-tests/generated-tests/wasms/const.88.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.9.wasm b/wasm-spec-tests/generated-tests/wasms/const.9.wasm new file mode 100644 index 0000000000000000000000000000000000000000..03bd9bae05db951ee4435472082b643b145cdb1c GIT binary patch literal 327 zcmYL@u};H45JYEp@6L%Y0#^tjA?<|}`2xEnmmk3?EJQ*`z!8GRmx7XlzoF&RxD<$O z-p=f5G+6ap0zlWU<&@A$N{Lbnv~*I#Fdz#KEZx)Vq}%lmySr82cP|IvWVvm(?Yjd= zoMjekjHNvhSs{?SkVNtL1D_DT{!xs{uJ-%KcewJKtU)EdCQ3Jm)n6zl x1~)Q_2rjR#W}|k_CKOAAkrp~?B$o+e9akntmHDY$2d{pHbMH&aM{gHnso& literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.90.wasm b/wasm-spec-tests/generated-tests/wasms/const.90.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.92.wasm b/wasm-spec-tests/generated-tests/wasms/const.92.wasm new file mode 100644 index 0000000000000000000000000000000000000000..55373b9c6e5c2d36057ea0754c79267a657a1743 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`#_@Uj>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$1=-EdT%j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.94.wasm b/wasm-spec-tests/generated-tests/wasms/const.94.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a9fbbc164059e341582986d3f86371c905fb509e GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!SQ+e>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0$Ey8E&u=k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.96.wasm b/wasm-spec-tests/generated-tests/wasms/const.96.wasm new file mode 100644 index 0000000000000000000000000000000000000000..92533df47a7a9ac3ea43e3ada7d8ed3777180c6b GIT binary patch literal 572 zcmYL_F^>~55QX2&*lTCK(QSngG~*DVP*Bh$h=wfm6tonV2omX%3zs7)BCP*PmY z-{242Ph)ZvRL`FAd~cpH-)#s04Z@5|!AwdiRA#`8>;~G;fyE8{u!Z*XQpV~*-x;w)Dk8MV@Iog+^*_AQ*T-H4-s zds??hhDtV+R=LsUG{XqP3kB6M1Yx6KPF&BGI6g9jh_h4kLCs zyo1FE8YcqvFXUgK_%YYEMcqeRC7ZEKtuu$lW}8*+YyV`Qp4y+=XQldlsmuArrM`l# Iot!H07xHFN9smFU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.97.wasm b/wasm-spec-tests/generated-tests/wasms/const.97.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4e1ba3ddbe1316aed98232202dfb32f186e20bf9 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo&(hSba(g2a*pG(ciFW*du8>nxKTEnTxsG{XqP5J5i99x;iL@p>k!aA$j@6hg z!-!oDZ(%ip#)&}vbNN>&zR$I#sQYNEWINWWb>`66ZnMgL?Vs$^6MJ)etW;ktbveJh M(wDH<$*BT=0aYAQD*ylh literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.98.wasm b/wasm-spec-tests/generated-tests/wasms/const.98.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b2be09df1af3223613d88f90066fd96abdbff79 GIT binary patch literal 572 zcmYL_F>ez=5QX2&?B1?#&&pK@K{IPCWC{uz8`0n+Jq0aAY=JGsj){XK1ckjWC@E6& zH~0hjX^cZb_4a0OzW3f@zS|H08iW~_f|-<3sLX&F*%xR(lf&WgaN^9e`0}k;T<(Ea`|q0h90_w()c>IY(d zC&8hWG$ty~(6#FUI*hsLpcrv8Vsv5EeZLvl@aOb29rMxjt?936Vx)j`!tr_f>|NnK z71}!^Wn*PhD6KOq57FJ-Bg;AP z!#h}wpm8El|3dy1iXU=qDe6AjD%p;8YMnVWw%e?7U;8Kf^wi$m9xK%sOI^+{uk;lx Ic5OV literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/const.99.wasm b/wasm-spec-tests/generated-tests/wasms/const.99.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69ddbdafbca2d2b7b5ce6e587706b11cc7c71628 GIT binary patch literal 572 zcmYL_F^&^K5Ji7gbx*ga$J&Vy5=phOkO>G#Y(#>GJpd9Z!P){_T6@iU@d`m;w*x|g zjX3}p-~xLz%1c1>d#b12|GzQcZ3qAj!i-D7OiC$KX26W>3$&lf;c$33ab{V3{@N_A zcbC@}^WARo3{~fw zyAekN_q1-243%stt#YHy$>Sit@Zq6^bZQ2oZf$%&L~EH96M1Yx6KPF&BGI6g9jh^0 zh7r3Q-ok1GjT3?T=kl*me4lGeQTNeS$#$$$>&&6C-DZ{h+CSN+C-&y{SgF2P>T-U0 Mr7vNzlT!u$0#=4nEC2ui literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/conversions.0.wasm b/wasm-spec-tests/generated-tests/wasms/conversions.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..696578f325656a4545518e51acb489df3fe1120d GIT binary patch literal 47622 zcmd754WLz1{{MgW)44b2sN=baSqo!I7(x%mjCOgL8HUWm_iLt^A>@nkG+{8JTY4mk zLXupmgd{G>mAWMz1Kdcd*hxXzVrM2|F_-V=j^pU@4fcttiASL z>-}Dzo$7w^`CclO@^13>Jk9UjJ9S#nyLWG|_i3rrX&&Fa-rm)xc~`T;yGpBG$tU*p zQbKRS6}_VLh!90^tj+(*&Y{Oe9ncZcE9-I9z8EfrL-%3 zevk7n?r}-V3(o4{`@s%7?6}iTJMX;9F1zl!Tk{sX>;E1tciVlZUH$*SUkZ#|7=z;dX}>(|JI&MQ%xG~X?Ga7+kI=#rKwCa9lRk< z_FH={O>N(BkHcyDtv#2fn(aU-4m#t)3;u<_^JkIUdY`l0VTZFg-q!hc+owTE8 zk8>`#q({$-diHRqk=lJH8E&wDaKqFdkV*7v#f{cb(ktsivjDQ^9cTR-g9kGS7}Ia$uidM0JOe^}r6`=;WGii!=P4UBIB&eZt( z`&k>BFju}iIU{yQ=i0PM@0)5?5~dF@z5e$wlxAbuw!s`z`lS9dh1s-?h4~&2f3uA+ z-*Zk^|3^G?)wZF0&nazetkN|3VU1m=6rsj*7)!%-TmG>xGAF62JSBSWKYO=o^@{ngD%B|m!mpxpRvf^yg3Z1>%| zbHewb(dtyx#oGq9O-0+Vc^iv%{Pz`2CwlpRuw)yzwPf3Lo?mS%+BThM{<8VLpL3hA z{{0{H*@i|dTIRbIZJT_yVP@|}%Jw7B`pz8wQC;Ozjn%XtjP~AbeV-rx+>0aT{zuSM zY5A-B&y+0zt7!b1YUE6}seUweO*MkGO}}X4*VKhB| zcl<_RzUQ18yW{_Gl>gAr)L5n2{)bf>{o0K^CjJPR#vT(Jf%zT>H&$sHLHRM2=7+;H zT4@@A`JQuXtkV2&l*TGeBPiR{IyZh7YWm%}Q~EJc&xrihb!p`0-3Zt=6|M1GS|e!N z)YLb2OKSvcn@ZOBE$zpmHGWHL1Z|tnv$0#+kHu>2mevT?Hu-ErqmMhyzFX0@4Xx3~ z#2<~;=!1GAXxsD)G*;6Z!P=(tY`muZShU7#S|e!Nbe@gXv>%JrSWRmLYw2+#d`8)> z_W56)-|BP2|2y(sqwo5!{SCK;{e^7-tB|j-U)uxo_62P1E9BEweegn>J}2Kp_HFzB z-!fvD{(tws7svX4`Tr_;!u$VZ9VX+jb>&+R#Ex1_7p}8s!r)*iQ zd)Vc+JYKsfWt+sF-7bESPZ{N8e>R@Vx9#JUZ5rRfr)GtLmWqnrHm6KHbMFxMBWcGZ zsc!RT+LfJRHtQq1bNv2GDZ7hHy2$S8j^E4f7B6CNbGJ8VTe!WU-93Jsy?b=N+O~8@ z?`8LlE7`MG=ic@wan^Z6^i5aVz2grTrtCiP^S4#;6t{1@gl|7}Xjj_( z;^}<*nadg2R`K0@YwdCdcK`TVzO{)zelcYah?lWGFrLZ!pm+l7pU2m;J~*zJ{mRen zA+C@$b)P>+hrez7*$XLqXlKq%f9q+E4~t)C*WsNh!s-RLReiy(cJXX>wU2w-4l;H* zG42@O%kCo_9=kPC^^15IyN--~`^&;^cq03&c>VJ!dsJru@_+MDwo|-mW7l5_xikvWEv{hKU*k2;rtIJ17g+y2ew6j8 z@o3hk#n-Uz9=|s~WlxV^Vts~+`Sq3d%y=5#dc^pPZ)e4K^6h`(imUC}E<_%-(Sif6IDDxS#t>i7oMz2h&Q zPT2}CeuGUPFP_7uuNU9X<{B@)iA_H*{&G&r_V?miHUqr)88!pG_#rlfJol^S>|igx zo$uFraep?~d9H3YvqQZ2BOX1j_u{%IKV5Q#9qM(~hruu2JZeXKgBQO_;xI3Mip`A) z)J66tFMfdU!xM}P?FcWvmG3uuaUV9fB)c!Ow|epWvr~4Y=YFDGS z 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/custom.1.wasm b/wasm-spec-tests/generated-tests/wasms/custom.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7a2d56d39ddfbffdc247cd5da35ae2b5fc5c2c97 GIT binary patch literal 308 zcmYL?Jx;?w5Jtb5*|i<7C0rpyH5*do1a?W5i(nTPA|WK;2tngbK}o?eI0i>!T~WQ6 zH$NZxaZdo~+IAcxI*Bn-?0}BuZki^rXBnQ~s^Ks`9`5^b99~brtg`*EABPi2tYH>o zEFFo+3W2gqi4@Mia1r7AANhi8e>^^Yz?MH`3~F%=QM^H@cS{5`Tm>lBT&)=)--h>> zWs;wp**1JmyiNStIEH%=8)=es?Iox;Dr$D#s$HRGwTf1*5~!6rfmxmPp)<7te})$@#sB~S literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/custom.2.wasm b/wasm-spec-tests/generated-tests/wasms/custom.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7ab7edde24c148d9ed7c94c6abac40d2fa3851ce GIT binary patch literal 332 zcmYL@Jx;?w5QX2&?AnPp5*7uboDC^*0=p#38R)U4Scrs>fFphyZwg8Zj=~W*8taPc zoB7`8Y0&mN0zjHI93vWuF;Z-RhQ@6e28;nk_AK4g>#W=N5Bs~e@4J^HFsf|V?fUKr zlFTxTHOA6`h^!DOyO2oX^a~dezWmONWBLcR&_&+{ZdSEH@?lz5%^wQ>xXC#SS=_hKUrl3Kh3^+rX_)?2j;l&n@! z%Vh%9QYLUMlK`KkF{{|9U9$1{4g5rNoz#-P@Kc?ZCRG*bsMvU?ZhC# C%r)}> literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/endianness.0.wasm b/wasm-spec-tests/generated-tests/wasms/endianness.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7d18f860b3fd1fc5dad255775f63f324b791dfe1 GIT binary patch literal 7172 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 |6}u)gV7C`C;T?krsj=-5}#_ZsHWh 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%0DVdfk+YPB?9!5yQx60&`#7h-9kGlG`ycA4l+Ze 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/f64.0.wasm b/wasm-spec-tests/generated-tests/wasms/f64.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..38b0a52ae310144c4576f65c7babcdc4242fa6c9 GIT binary patch literal 243960 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

02hW__j>Z55ECXCA0Zcs) zdVYZSO>J*F0ievE8{x}n9yE7C(CFkvQou666%xSIi=meUc;D3arV{|lxLa#2@yl=? zG@m`ej59o_j-hZVy*W0?PsS^$wUH zUgRHG8=!tu;hUOtz1>>N{W7Kp-stg0Zs}x!C4o!ifT=e^zZ{@`Q{ij8N#~9#Un%#? zpdR!rPh*r3!LJ6A!0qLLsW(G!32?uu@l8#--mI09zl`cZa|_Q?=Pn)-ye*IgrV}d_ zj0a{^FF^jL$~QIX75?12MDK#8V*x!OkqUk@kOuDQH84NC4UPbQhfb@cZ>rMEJdXEe zU=O^(;|*R0Gx&lC2FC*P!(MO{@cVRIrG1UJ;oLm(+&>ilA^32Q)7wG^e-uasm)L#s z!N_2S_5uuW>V3Tp@9yEx1b+rx@8No{gFg?Xf-7Z$slNo?A7FrOU1&IZ@MewaR8-0U zOaIcuJ>1Xh;9j9raHUKzb#JW7Z8E^A_cj0Za7*C6g8Ks3dAKgI43;rc)?a4$cKKjr zFhhGXz^V839zMo1RLTHL|I)zeT+_f~>EMB(RB(HlVCs6{!7{+9_w^n==8aY<11$YZ z`}XjjSUPxUC>2~O6HI*%@Gu$R)cbl5AJa%GWq_rBY2F@Y>|&%`uvBoROfdC*!1v1l zr{33lc)dyUGQiTmv~CY?j%`C|7}Ojc@~c7vQ;z|DPzE^lzUce(f|{2Bmj0!2dw6{; z9Xvji3TBRse6X1S{ICpg>V3_>f%P8C%K%IN(zZR!FcUg>Vki|{CKF8kIPfGH;MDv2 z831~J=VgGUe`(krUK~pYPYtDlFOUhQo(4Q!1~~P;eg=Tvo_QHy>0g?)hZ|$*V8)-H z#PrJqQ$Gd#vgIQ72f8V{chyhQL4;0Yd{5K9L?A4&z6$OKa_ z170ozoO)k#wTH`qR|;MU+~DDcSUMP0fC?^=38r2Ryha8%^}c@Yf!<+x8DQyO+Ovm; z$I`*;LaE>qnPBSmz#C+MQ}65N9>jbCU|8Q|3W`nd=6Oo4X@-T_?a;ksBlcxNaT zTqYAt{U-2RGQg?#^>Yu(XwP{WVCi4lGu>p`GxkF+SSq+oCYX8;@Ov`AsrU7B5A?y2 zmjRakr9FEXC4vtAAe0I&lL@B&2>4?e;MDt?OMJu7tNn@KPk<3MoOvhqLoQenASg^ENL7%+MY%)(CiWBpr-^>lp#}k`G1(Gqe|BfK%^l{^{Q&alVZV zFc(Iw3hD|Nd(}rSSSq+gCYZV(aQ_GcoO)lQSr7WaY9j;8g%KF12D~bg4jvFm1#>Nw z4@L$vycc1BQ}63%J?LW4Mh2J*Bk*DmFOH;xheT4r6*9rpLxJy(FuNw4@L$v&=+BVQ}64i59s5jjSMgsMqr*IIX6Vo!JL1JepP5- z>Z!m_L>S=I`}*kv`nYK$1I&dHnAZuImkJ#`BeF9E^Eyz^0)8^W0H@y9Pan|5pp6VL z7e?TE57$T1!LuW&V21nTgOR}u_eB`s)cgAB1G*Trkpbqy2+X^QGozK!!Sf=iV6KJo z!N_0+{2~l+>V5t60bLB*$N+O;1m-Ob%)6R*3vZPrg3-X#&jT-wFu40ul5GP8-Tg`0CNFC2XBm|g1HvT2P1 z-W6ehQ}631F6hqS5E)=DjKF+Q0P|Ua4t_h53T`hGOuZZU-3SAmdS5?rK^KEVWPrIa z0x$OPVlI(#!BWAoOfdBaz#m2!;MDt?GyT)nnLif%F>s@Y8@WWv1xp2&$plk>3jA4w z0ZzTIpY@%KiSvfd1Ka~ll9s+zJah{3DrQ>PLVdjWNKf_chg=S$Fz}$N+PX2uy#1S9@O|9sGDK z6i3;;EZ zwlcunBLeUA@XkOw_^DVbxKbvVdN%N!7z3PoUq1st4Wq3LF!zYSbO3qUn*-_K##kyi zmIabs{-lZWwBJSH^I~^fLF#C;MDv2831Y+ZDoMDM+BzJ4!k&!4qhEg1%Fp2 znEFNFwJ`=b^}gmbepPB1ZDoMDM+9cz0GP1@`U`XxP{Cbgf~hwGzZ_$LQ}63lx*A4X z8DQ=afoFMmRv;bxYAh9eoJ=tFX5cL`1~~P;-iE7Tw3Pwo9uau5hbITp!P{b~;IGRB zQ@;VcBgO!y-q+i3HH@}0z}zDOPw+59J?P*!W2xZdWP+*R27V{T0H@y9e5cSb+R6ZP zj|kl0;f6pucuy=9{4JSa>b=14#~9$$`ZDoMDM+C0-aD5;h{CO-D++HS_`b*&bTnb}LPnSbZS|71(Wq|2F zjLRuI^g}~w{DjY zMh4S+PB6f!`87vz-V#vEFMVgwf>ItR6D$$jQXZJP9uNaOm|24IzUD~41Q72_zZtL~ zlu^M$6KP;83ru|v;IIVyn_6G5u{#4|ed#j;7IZQqcw{08+({0Y`aVGH@BK;Ye7(f3 z1jPB$Uk2>1*M~bqIbbPZddmqO7zs>oIl=s<#ux9+F9vX&z;S>Dl{{VsSOU1U{4ezc zz=spOZ|Zx^5rFLh@xAnu0Sh7-1w1j4{%t4wOZ_|eaYZSuSN`xebS?A(G3q;C?i>^Nvz>e+uQG7y&>WBd~L=@zNL zre%WrUV)YY=oa}%L51Y)^c&QBF?E@i7~ztEGPDqUdnu7RK0xWSZ%xL%ZP z-TRxhz;herSKM04!`vduuezC(hr0=s?c4~;_U?AdBiv`N$qBwq+0ng1*~zV-?ChSQ zG;T7bb)zYdbVDeQa<@_*?LK%_VsJaW2@*WGiJRc;pLH{8RN-*h7>zvb?rJl1{w zN)GS$4&`^;tCYvNm6TmvBjxdK3groI4CRULF3OW!Z_1P1hnuv(^9{;V+)I?Fy2X^I zxhE;V>mH%}p1YUw`)&Z`58M|oOX}^WJl(xU+0Ct@bnaQoYB!bgNA5w&AG@KHKXJEF z*0_&0YL(|M%AdJSls|VXDSzSSQU20Rr#!<=p!}7)m-5$cASKd{@=W)^21&ael)rTw zDSzjdQ~usHQvSg`L3y?tPx(hTg7O?Ufbvgn|9V-wy_A1(+bPd=>nZ>0mQw!B&80lg zO`+`W#!{Z|hEe|A-A;Ld`y73Eq1#P)k=sm(qNDt$TR?fSdxG*3WbUQa?|w1k!!KTW zcirF6bYqBKUTy3Z)sL)wWbMc&-dHxG7FRcz@Kx1B9vP>i7G+mQ=o-ZHweDTq@^#g* zy`DE^ueyG94RyRJZ(v;UF#9hW%)bum$p72?+uq1v;!Wm8bJJP&W^=RskNJ-uMO2Hv zg@@mAP}lvxtn=z&uC=u+2&+BI@&U@HXHSi_`{BQx1N_@O|b|E%~G#3_3)bO=~?lG>+9e|5ZsphOn7P(wh!h6{XzY-GO{xUb>HZ zSWqM7$L-As={`S-RSr5*=txlY^Q$Q3{q7Cq`skKO_#ygg(gmNX>+@q+EkSj+Wg0*k zCjc~CSFL%W4wvj> z=o(mK3ssb|eNWIM(F=vxqn-|o<(mj`Fe_J{)B;ZlzP$V% z_0zyezS%)4`25h9CQuzN)yL2^um&coD7DD*8G0mo+RsYzA@^$J_~r$v-}6IXE$L1i zF4M=*H87*Fz}pza*78p2y}axm^>e_B<@Zv(=hy6L!r0*weGFX#Z}#wJ2C=oeQ)@i) zl6%z4fmcZHrFPG+*-5zRJKU}kyb73cWX{Y`@(TfyPiikOvq!xK_(iF`)a>~|w{rh# zuM@luSVJOJl#+Ze(IZjL8)WyedNt_+&s6OBLATca1=}Qe6Yz^3W^ELX?-hC^g3)=@ zuK{nC*h{^hA9QQ!&%9OeR$z^%R8dOty-trr@OHU9oL)`3zBAQ&e$cJ8f3(_Ytr?dsnqj>ZY})_wp;LSU=7ApQEGkXyYxr|zZV$l_kj1x z>7`1~54vgU+ToIW3|#|bDu9s{*gdABd?Xl=NBuGIJ}JG_==njnmj3trso+n68$H~} zAhwovYJn#m5-ssW=hdX^J5!_Q2i;2ind@LoUD!38?O|5m^$c-)THqN==uzJq*2wDh z4pXD&7yPJIwX=N$_W{;0P!*-@USB5b3+^wiht8`>*LS8y&yU!tRkf4b)2hy{AtniU zS}41BCzJIB50chH=havSOc*U0ETiW~?9{5-$?a)XXV-ADhbM=!dv`HeKjiIsx3nHQ zuO?mJnHoJmVy9Ns&T0V13>3jAF)%bYA3g+Rh?Z!P66ED*LOY|%IM`K^r#;Leq2f~HF|!;POYk))$3#? z1CtdniA|B)lhMmd=utlb%=wKVqj=)lP0tt2(=edgZDpW%p)=mS1~bLXY}M zV65I#VQTdJIwiHLc5-`K)!8-VcLF@rukV}_%IM`K^r)W!Zj{nXjh-LwQ>$txx2IK| zT|?dmz`PT%d-Fp}JIPDvQ7;5uB&C-cJ-<##t*V{eo>q0T8IgwvgtB`}LK(fhgdX)$ z;AK*JsnPReg=$sp*|%X*z4=_GI+(5_;4x0k4Ur8IeeB+rP)3ir`qFynyc$`(ZDDHk{6M2xReQNTt?J~{ z*~46GuzNc~yHihlm$V)_uO?mJnHoL6PD!n*z1*Hwb@KV_Vb-W)_udI*^q8wJt%uI5 zv3sQSQlsZbDb=dl%k61ZC!fzA-oqtQZcj#!x%$$2=)9VAeP?R){5mDIs`hrD;C;Yv zd-!cGk#c)7dd$_A)XajI1@SR?pLU|s$Bd=6yy_J=Zhv4kFV&!|RL zuUC{BJwL>$R@Gi^j|*eO=d*{m1+sg$d83z?(8KKY1?I*M3DaLj&ku2`RkfGfW3B@* zA7z}GPqRC;v{ObeFQG?$CoooTV3Zm?Kg6k4#bgJ;^}zbLZN-s5feuz`8s=d~9a$yA4{RN-T%nQ@fP8mIBI!NoG z^J--E#z(2q^NXC+s@lu#abX1J&IOn$N)Kykr;J`Kp-25FFjjA3lo~z1$Vsj02)R8j zjKJJ10dv1JNlQCr^kNA;>M6ijy{S=Z^!(teTGbJ9dt4ZSbwkGIGn2x!v{Obewlk&m z%uHac9%}PR89l~i(<$^v$n9}q1m;!`xRE(wTG}b27fa|-&jH5j&5cr{=a*NhRUIL> z$AuAiwuiaFd^W=E$>_xrderlQ7f9))M$a#=QmZ;bZjTEi@GK9{Vn&#jcFO3*5_;52 zfU$bdN2$^CW5Q}xN677QVFaG$VJ5<1_m)R8da;Ba^-5r@-l`}ydVYD8TGbJ9dt4ZS zCwrJXa_rukNJcM~(4$@pjMZBgrAE&WD63T+A-Bhc5qP49Co&gIOFL!snCT#`ht8`> z*LS8y&krc8RUIL>$6N>C2_BxnR4^^=l+lYN^r*K0Z+#VN3;ISSa z%S%eXWk=t5Ab~+zK>~O5pGXLFP6}wejoS)DZSL_`EhWysw3p~nCk#M+{43} z1g52(GJ3Iu9`z@{pGxVaMh~x~DVI9)=Yl^69_rztOajx=P8mIBI!NoG^J;8eZ0fim z#uz=nDom}agWMkXh%ukf9h`hXVKZaBucX($Y>DJ^Ibkdgwg*%~E=)(esPh)T%nj?QxF? zT<76Bwo1~{P8q$tgdX+%z*xOeTo7gS{9-n>st&e6a04*I6IJ0Ya(km=`MkVz9`%Eu zV`GF~>hrvFP@C!?v&S7GC1EwX6a!mJyae&XX(7u=6U0w7S%yskNZQ= z>xEt~ulHCimzS5yqn-phSu!tmdEPguJ#~=P%jrEC%j0>CNBuM?E^juML3uoH9MqON$mnrr2#PwW3NMz? zdnT5}%S+->KMOif8ZWhYe%+l~QV01w?h8RL6nde2-a_Vm>8#I59rK`|ax;hC~{ug5ZX^pmCU z(025brS4L5=T(VXPe(aC?gc^55PF6j-Y!PFbyjp8^;@8COWdX24#T3CsRVSl(A}Wu zlB)1$GI;OCvUYh%JL>m9_e$HP*3K_ZRLkiof5&|w=#Pc|SpM$ASk5jlWk>xn=sroi z)Y*AOqn6WA_Kv$i&~8Gz$=-by%h-8gNBsrpmr{1AvGbBfEvKX09sT2^YxsSk-C~Z_+E4xV$h?79xaDA&M)80OWci@ zwxdTZb(fku%u?ENI?3VDBL+1>jV#`ye)%SA*Cp@}cl3uP?^1W?{gPTvCs{oD!=N36 zc96%L!VYkH!bm&nCqOZH(~{KQF;6JHpX(%#M{gJuIaL)NE|WKt?cao=?Wmsw#o;}b zr2Y;um45DYlF6el40@>0L*?@3u=kr##2xiBpp8;^sliM26t8e6xjcHppqQFuhV<|l9g`kTh@luDE3M$?bon-Uq2ZL4!t&q=K!me*Zk$2QfL6=G6r54XCDpb-6 zaVt<%c)XQ~6xG~zEfc@2FjZ61QyaqCqjEOqxRnnMR!<-AXi`rH38#cn{lfohS@pP+ z$CMzHO5Fy2N|&WQ&rjv7DJzjuc{h-s+PM91NImVLZ0ojA9_m(8 ze#OnFJj_j_{HhyAdAPfWvYqQo+1~BjF7>pFvV+@5+0iYf?Br%sc6N_Z8aIm4xc}<;GKf!wsYSrt3%fE%(XmQcrJEe%rlF`5m{6 z@;En#vWt71@_6?EaLVtQ zJa6Mpmg|xE{y|-#ADAE5ADU8oy7{3wy~cJk-K;at_nulIWINevfa-&~KR;sr&yRTv z{KWj&{G`U#m>T<2^HbkrYT?hoCEEP#pf1nP&Cl&G0DftHVSZU-&oF1$UzuO|UQ#RG zZJq3|0e*c@H|ICzH}*`P(plzAb5@Q0t@*9}o%x;b8MUBMbh3PEncpAOwfO`41f9(p z{%FoNf2^_Rm~-r(%%6O3sLY??&j5cus5|o)^A~$AXZWi**Zj4{{>}W&o@dVUJ)jo; zt3&cb=6rL${X1v4!2I1@P-8DN7ut)=MTK6Ea`*?pKMv}){L}o?Ud$OTF&CRl zYV4&bnaj*&zNgcQSE;k*-o{*hP*>#&e9x7f;VN^bxvIuqZLYT0ur-}FkI3_T=xnbA zxb~p#$#v#Bdp*Dn=6Z8O4VLR)7PIAhG-V#(cF){+P?zK;a}%lTaK z^1YZAyh@$1T&&hOs2fsiYAyGw+`R{ex+jCdy|fa=db{O&F#3q?Y;`wmdNY!Ipc8VN zjF&}tarZ9kh4NxJLrcxr(GF5iREJG--N7sDCA2Rb3BuXL+Z z?%w6T5MK;uG;M2&=+eFxdY5;W?_xLu_&_HF`IYW;S}N}~O3U0B&Ik-0y3v8*P!C4$ z_|7t33}*lz=!BrZ9`qZXa{n&>WyS%IZ`#xp*`*0cdiQsh^I|vy_&_HF0haD_${oDl z?DSFKiA{T&qPx_CQA_A7>&0*eFuzbP>U2U-VCgoerLtf2yQct8ZQ9Zl-KFg~)G9j5 zdNG^At1%6FFYVlV@gccnTZ=&y8xQ|{sY zE~j%qabD?Wrl>B>nNmwJGF}X2fL<^3di$)*m&8}8ychL+&;?C9nIgJ0V@hqt$agW2 z0b1yUpuV2-Tbq{3dM(zvHij{pwlPI>X%7#z9wXbuFa{_MRhi(X>>)Yope(F@Vvudntm;`X^ilir-=Y1C(o*Iw2^p*8;m)FVhw|FS7-7Yt!DP zuLr*WqE=*Nxfs3xJy+KMaXDM1s6TQ@WjO-S}7NBS7tY=7crJI;? z5ASy}-49w98ivok(enKlwH+h3C9!p&6LPB@mlRj23>Wonj28E4+OHI)rT&Xrj*;1t z);iD$=`X`2!Nm+@EnH*K8Uq&cTB*${^j~z=fkFp@cGDB?CdD;~3CKDtYKwX>=#Zwp zO3_)`TtzL%%4$hz9q5GIExTp!5jsqZ)>yE{V1=AkYO;L)MJ>n5X-Q}u=!BrR(ydGV zex>(mxf(+iP5YFhvb4F1T8_01LK{F&(i1*Oa%*%bu~jOsMg1V?Soy5fV)_1yT8@>^ zlFT~L2|;Z=6iRFPy-KMc27N>}ODohkw7H5tgRE?pRMvq`2x9B8P*Th9R7yPwbh2Dl zYOs9&MV~-cE=wZoKqmyPm2O$;_bHtwsl`x*OjhczeE&r)$I4_$V;$&(AhpsBOZ_gT zPic`FLlyE^TARk9{)<|UmB*6AI?xG0X{FnhqW9&rSfa*Ig)CO;u6+MREyv1YNnsu6 zgdnsQvJ;?NI?zHV1eKL;Q|k97 zU9Y8S3{^DkNs6{=>CdX)>n5R_KntA^L{_>uc12j8|4v0v zoa;mx0^+k&u7h|%INm_nX{d!oJKT@Dys?2qRMM#v#2s#)GVsp);5bOw{6X$%I*DT zQRUWaLH7A7x53S#%B>+AJxRGuIuN}feSJ?-ZgZPOmD}=WQRTL&SyZ{b)hw#qK5Z6N zZv7WFWzqB;l-uxTQRVhfv#4^Lk&T|L+!i*ADz_J#MU~s@&7#U}Z?mX!>$ynJ*MH4b z`kI}r-0GV}l^fr5l6kCh<6BTNQRT)rq-3JXjc-pWj&@aUe6va>s@(YMl}uE*@wF_O zsB+^gTQX7Q#@D%IqRMT2v#4_8YhW^uRc;HKMU@+0ACq~ka@(4Xo}%2|YZg^*d^Jt+ zzi^6j<7;aQ(ZYM@6y?TO+GL{2jjy}OM3oy~g_DUYH@+q(6IE_}zfLBq-1thKOjNn? zbv?z=QBuLf$fRPTc5|**rm_y_%6zUt&56-N`h^Tii1jnEsu(WN`&o@ii1jpt&)m^N``He zii1jrEtZOc{&s?$nTmr-h+UhCgUW~{wMCR7PxORUA}C>~mEdR7PxpRh}nJzH_jU z=n2Y+{jsuPWyR)M*|73rXRT~lnXv^|Hmuy(pDP3E6df*!^(1N^RTkqOPD(tzHzhA7*1A_ zY?qgbDo3``D~|g654PFMM3o`?@nxb)kbV0yQRT;;ewnD!W52&lRN1jFU?!^M*gr56 zRc>rFn29PkHX+PJl^Yur7DxU42b&kB(Wa~XDawtF4Kq>Y#-@jvsB&XN#7tDVv5jIT zs@&LqF%wm8Y|og9DmS)n%tVzNyFO;3%8mUZi=+PjgDodBQRT*Vl$oeD5j)X%2yOqLM-wtiYXbE{}siQ3kw5_VoHT2gGDiA!eYXrm=a-`;lVL~f5HO9 zqL}hvX<|`Kd9Y})D5gAE&R7&v9xQYucI8Ed*ToNeumrLwraV|2Srk(qESoHfDGwG@ z7R8hYODzwM`TGzSVHU-d2g@^yV#yQDw%0+DufrvDh{fRcN8TqRNd0yqTzSV{va9E!;+( zaI$h^;cq6Y+*lNxi7Gc13}>Rst@kV0sB&YWaptkgjYY_rsB&Y0a&gq(T(EdK6IE_3 zY|ccL8;hPZQRT*h=uA|(u~<42Rcwvpd&3Lwv#!dG1=yLWa$|9JCaT<6 zxLq9eHy14G&P0_P3%)Z^<;G(0OjNnCP&^Y=ZY(0tM3oy0%rjBt#^Uo#RJpM*Jrh-K zELzV*l^YA%i=+PLg2nD>wCR0zs&Zo?d?u>gZr_}ZDz_2MqRMSTv#4^L*(|Eu7B!11 zx3$fp%57V-sB(Kh8};`XYywc6#c9fo4FWPz<;La#nW%D`)GVsp*nEJ;>f7oI?=wH% z!NvrcsB&ZDf=pDovBN0=A;vlF{0H)fm_NB#W;v(Yk9 z<;G04OjNloYZg^*%y7#*R=F|zEfZC4pEQdqH)hRc9;@7#QJ0A-H)h*qqRNe#c*RkF z&#|CcRJk#OFY{RC#_T>t4_wbqJVCiJ^Dh%sZp;eIM3oye1~XCR#%#h&RJk$JFcVd7 z%tFjWl^Zh@i=+NNgxQOksB&XwVB o%rwnJl^e5AGg0NnEY(a@xiO116IE`^e=Uys`;uIFT*`C#e{%OA0{{R3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/if.0.wasm b/wasm-spec-tests/generated-tests/wasms/if.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..51afe97dee69ad71e81d352c8028670063713f00 GIT binary patch literal 9695 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..dd359ab05fcb47fd1129f28c007c7f8d02a1d6ca GIT binary patch literal 1088 zcmaKr&2AGx41hf|JG+~mO|$(^|LrvW;Q$hCwUM~c$svL(a8II=NJ*L|B`pF8WqaU) z#DN0`o&j;;4azIK}xe9ZFW zv5{c%Y_p<^f|n-~+S9*URlGyN%kv5Ch5076&LlTjjJLQnad8p|D0(DOmcjnI22xg# zSItOQfqeUuEkX77%?A|P?`+E1j3NtU>?hV@>-+)bF^?wEG=man_(UlAJXF8}CFs#C zCOBK8Ih><;oX0qcFk;-N1;!Ur89F?qMO>sM#+PvkmupnSBCX&G<`@srPXbzHd^MGx z!#!HVHCktU1J`k*Mw_@vTeyV*87k{ya2sz)ArWo|ub^iV&70t?~x?cIk0_exNJJ_hF$%3}=kJXOk} z=gt&i4x)U42k3eKt&ZA*B$chR%sn5T@ zYk+nQ2zX8*1{hWppuVR1gh5T2dgy*+!+@#W8gZpIkNDL?`tTcW|2HwYC4(%B*x$^TAlK`6M3AOZ@I zC@JY^Qt<@l4Jdd4dI}zaIaAOeQGL5J-^_gT?ZRL=RREw`u8&0leO(lVD*6C@B{!9; zysz^-|8qn}oz0#`*?c*ir-S7(J6i#ipXJ>;&nw_t**>SoAYX^(PyPC3LLg*7ow zl$th{5-U`V!AmPIMSdh=qjE;Bt(deiM<*l$G?}sVw=IZ~EJ0Ua6Hr|p3!v;QO#?Xw z9TW|1EZqUI#Zg%9XiGyXGA(?_RZ&r`K^%Cg@#JG86C$aNMx{yRc>h>KX|->r@;TCf YehxYr3@3C4Hm~)6;$0zvH;)M5H>6&T5C8xG literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm new file mode 100644 index 0000000000000000000000000000000000000000..22879af8a575be1a85f67eb84ddb7ce46198eb32 GIT binary patch literal 752 zcmZuvv2GJV5S^Xfz1#Di<4v4I6cjVTg;OLFA)F-|ye<$W@B?QH9LaVZCvk$HxeF2{ z1wTQ@N2KH%_!{QifPm`l%+9=d^LAmfUMc`k$JrR`8pgV=YgLZ{#!4d9oK>Z&v97A> zj~E&C^x}O!U9D%UaQX6XwE~sw>srOTd+;^H zAHN}es=Ko%C&w47@@#efuDqTu%XN7IwmU0M|H&qHa(Q|F5wg}#?FM~LY>ez-c2dtg1P*^F-4#;+13vF0@1vLhEPXM~iA1VRzOEo!l+lymZwzu-2td5g9v z365+?xFf}#fd;}u4IC)&HW}WbZQ6OwUFz~K?UD{oMC?iF-kkSozXu)vR{2I9%7vB- zyeBAnv&x5|0O3< J0^YnNfM28Xf06(I literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm new file mode 100644 index 0000000000000000000000000000000000000000..24502ba45b0dc2a158c3f26077b10f8d27f67b54 GIT binary patch literal 554 zcmZ9IyKWRQ6o$`bJf0bQc3dGubsSPGO@si=maO+7Xm?g(icQ#LVL}AWc#D)2d5iEE zbVxiEUb4ysyZFxcAM4mMtcDE&0G^Z`#Rwh87%_GL9VWwljU$d7kK_2r$rJbISGKLw*tCf8B?NbN1OZyI0R*OGrvyQt zhHsybQg}Vzr!DOg-zWZ<8v>(K7GQJW`9Cfo9=J12njC(EPsf~k(LC||&d0@}umAHR z`A=jOc~t3no`d*ISh6#(L>+@8Q35l5o`5rU2{hv(fX`Ezx0H#RQs(snd?8wj8H1=- zT=;UqzLHX^58g<5>n+X2)IjsQEq0Ot5`%H2W#cMK#u?0 zoFtl}AXLXnsn94=(TpjSJNZDiAou>`B*ZSX{l@yr7yWm8gS`g*pM5P^Wc&HXM2jbx z*OGAm`1s|wWYh2CG@#7bT&ZG#Ty{85j&fag1gh(DU6YFs+&6FLW%GxY-_7-j#2tx0 zwX7x^%bqhw<>m{DU9ACnDzKlz_+~F&@!dGz> zGg*p@0$&sOTCVFJuJd(V=Np)2;0DlP2J<}TaY5jzEaC-$7jj+maE)uI@lC0G3pa7A z!?$sp>!>3WxGM0Xz>B$thrxGnhwtJXFX1khI=qZ!Ucm|~0w-C__XNJzG;`34W{y{} z%4>*u9cx(M z=Yl>z;1_sNqpJN}S#J^TGBzTZLk}YK)6j+2`bkKf@P|5w~$oC z&s;)K*9oU6Ag0mT#7# zku0NJ%RAI{AXXG7B1YoBG4vNwl5WXooXT6I70OCh&RDtSKsuD=Z25pIsQC8wZ&f01 zGdsN}1HCsMXneWfe~C3B@5{5Kb&tKvA_rGlcGT6o!`N)`yH39@%=LIYmC{?yGn21nG7CK(A z$Rdk8Ko(i#0a#`iSY?w%9wC)y$OEKDQ3EtXXM=m>PVi>>Us{2)T zGdIC!oK%{0zesv^C@P*B#*ojsA7ytMlUc~;p>aOf3($4Fz%!WP3pm3UaRC=Qd%5y2dAfS@L>;}8MDO{z*zxlRx)Qk5g8I7Wo{4JW#V zq#}mq5`wx;I7JC*MpjB$Ib`>_jI!@BFroN!=tbkiZZHTAq<&bVOd|yO`wOA`&4keM z%~CXyWt3}qhq?~Li(*B@Nc=a3{z6L9E%|~|d5g3{S;@*7E4Lg-hq9b4?{fte-`@VM zO5|;3r*>qbcSaM9FL(D|Vui^2@-%5xBysQwNv8Y1Q)?oLEVD|%Dw{k+Do>C_9w0r6N-~bXvP%E9e*TSko)jy5@HwH{`%VTi~jr0pwp!Pv#%wKY(H;Iw0M$v zEeZFIj$VCBHvKM61Imoel`7`RWe0QQDA#32pt>&CHMw}-ee-rsHoxETySYA=xGnL= z9jnR4vghK%aeO_Bt+*J+WBXfB4GKL}<7d7IhWf-4NLwbi!U_a+z#6(n?&nX$rgc32 zfrH7q%c1*0)Totm-1?n3asPZIE=_=p)5-d8V(b1Cx$ORs|BCYkHJ=&9Ay?h6vYWY- z&pN3z<$jU$+(=YBJ&G}(cR$JQ45qS>FF@l$t{0)}dXZ-_%NKE$FX19CwfQnG^A%jd zOqSxjz*hynn(MlU>wFE@_&TN;xDK?L!90gKoD+B|i+En(`CQjLT;m#Qd_yYV#0}hR z^DW%sI_k&-t_r*$@ItQPVeoC-<~umUi@1ZuHZNg`m$8hBz)2SKU4id5%`EhSndKF% z@G4?n!z$Kxc^&KAKm%ogt-u=sZ!}Hj;f! zXM#T4=jV7{qpJN#B>}YK)6L!2`bkKf+ebQcf&-}^)+o~mLH_mLn2hyP|XUqFsLB+SXf2k6A zo7w4(40LBa(0IAme}z>d@5|GqHIc-@CnOo}|4yxoB$hu-YKSB=;ibIsd9MwTWSUNs Za*<^2PDqnpO_5|^Pm?x9A{%@F(Z4Y|0k{AF literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2a8a3c0f0de78af31f6d249b6c4a5d6cf26d60af GIT binary patch literal 1305 zcmZvb%~Bgj5XXCF_DegGwb&Tr?|%!~7B*l&VukSs8rjwzzko!glq$dkY&offHsEA0dlm@yeXkdz> zP{n{~pu|)DU5(XvV8-L|8DFzD!!N!n506HBNB!N=X!!OWkqTL-XA0#`K9DWQz5h5hu?y{9bA9FQ@UTDXH|am`OYtJRm$#-`JoUVm zguBPbufHLieu~n7GGlY4iUo4nL5&>cy6gzl(B+0E7w@~T-_#`dL&ryReIj;S>`xu5 z$;J|M=IGQOPi)tGcWS@4zXsKy&|@{Z)wos!V}0fhq%4zLWd(vdU=3X-_sd6O(hW#dX2^9>;F&C97MOEg_i&wSsPTeiu44i99^b(ozKgr43VcD} zdjj9fH9QP%puvlh`92nLzsC>ofS0g@vcO3e^RmFpZ8HzOXy$nZEBp{Kui_zAcX$nJ zypDBPfm4B-0yo&A6PqYaGAH~<;74tfcsSuLZ1H2s`~;8j zWQU*PDL=zAL;{Cd!rKCGw+(rixPuNm$=roQcZZ+jIlsUQm@Jha{Zi1E``kmXPF4Gv zvc3bf%h-ru4mdzim!9Gf0m3b+icz^v5G+%bBd0hAp#)83!p~5FAMUuuhpq2=eC_Liv*kp=HmKG?LdS*YXVw9Z1Vb z$00`I_Za#EDM_{D6{qqQX@#l^c%6}^wb~-d PJf0_QibOVe52AknrVsMI literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e6e149024308c8d33c5da58e082364d48e79f6d1 GIT binary patch literal 1307 zcmZvbOKuxS5QeL}=f!E#9NDrgzyG3Wo3bTY4{9jO53y;Rd*uS8V9Z)Z3hym?FHL(#$DU^sY7%GgwE z6URxSDGEY$q?8JcA{EV;Lb>DjWD9cdK1@vPLc6=Ry7Xpn&>QyF>7)0Vc#+-Bn-eXb zcwS4woui{yUy@D#j?#cKV{@g7Ida*4jU45=>RrBtTYMY0 zQ5E={z;^_`lWTYw+(3ipCG%a(<8GJl;T|tw0cC-cEapXl7h7f)dfv?P5|;QrVqV65 zEN}A)R(KVwumYz7uL-=?GMR@nZlcNS2sp<&@@;OR#T(c_X`DIX2LeB6nZ&~hZ(@@l zO6Es+h)3J}7?1f0o*)u9%o5%bc&lZ|!^Ca0*-7RO96HNc%bnd5XXCF_Defbv`!qy`Tn=8BywUq{#-fEhc!x~yLkc0MTsigF?OOr!DZJ_ z95`^`0Vqy9K#m-f6BizWf*0Vx1JEN}!m09B?e=#6f787)+fBQpLq$YtsWQ-INdr@s zr78zR10|mF@2XJ6z!XJs#@DRP@bfRL!=usOQGa(d8oqf;_WS@wz~9Yc-SBH+w{Npg?N$O%hxAbJn_7i zguBPbuf8Um{uQMGWya=8m2>2>g9bUub=485rK>GXF5Y)vy>3YGyN-|M`b6xu*dIDp zlZ_?j;-gc0Jht8Vn^XI({W+)yr7qO?Rz;%>3Vr4dq%4zLW(9&eU=7_Q_tOVr(#hb=d7V>3iT+a0ZbW1Pr3}*NWGM>d1%=Y*yuJScp!*rJ7lEBvmzMkur zhg*CDH~1!MdmtH-x-n<3Xlfv2*FSzyj})5A?}puuyJxrsS6dwd6X_%80EF7O3` z?+JV_*YGg7g%;0C=KGk({T@HS175%assblj%!>jqw#_W`yqV=CEb&9cyo`rf-r*Ij z@G4ee1x^KC6L_s{G7o3Gj&S9!`69kJ?=Scoyj0o{-PIL!JP5PB92wFPf6cyPe zSxIGOk=^Gis=h{HLTSHos~HC=U=SQg{;)}zMhNof7ee`y387`rk~EUnDA)20EgeYD zNy{Nd;`bQ(1F1;0HCHWP}i{dh$>X;eyms?H-%S6SPl|jl{MJkRMot;IfkgM-Ch- z@iIIb-du`=N1D(6EZLG_-YyXU@HDR}MyOSc5n~Ndqg2@E*kM1sXu zv%Wf?oiFZYtLE=FFb9kB$48x*`DSzV0Quk_Wg48aC1U&v!Cf9ffRc&;3}Y(B1R=c$ z_t!@vA1A#nX)F9Ge41DSn~Do@x#KiOyDyW%R^r}E$C)o9`w6j|_G%Y#=M(WSXiTI| z4%KPd?p0u~S+TzKhRrcJV#83W&jPHJ6HukH06vj4DM_;#llJKpe8wqfl>#;=D)Tw# zzx;qE{o}z9rsyr_Y=8TLiy;J@Izy-z@J1hBbuMN8-(<`)E5fE?y zav~B=U~a?_s9}Rmh+cJ7*L(Ge89F-D9NfCZ?P&KC3=}G1KjK`3YS5T_qZFf7rr*yQ97Lp(|0T~z7JK|=Qwdcl?`?3R;Va5QGu6{8}fhvY=2!)Xp)sJt}!xkzQL zMx#umJ6Eb?5m2lb?cf8*i4DU@JrKZ=$^}Sl2&t9O79=waNr&VV#8JX-q<~H9u_J2k wT}Wk$v>AD)qju4=hNAepM%)(`V|BG1qtPBj{pDw literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e76055c22f150aa0b78b3954df353eecf9d85dc5 GIT binary patch literal 1032 zcmZ{iOHLa>5J0OxGt-{70&z?;IO-qECY4no;jN)<)MNCBVK3i3EXd=LRjgiJNNL>z4j@XpnGyM zdIL88p<@k+vZ)aH2DoHc2M4JvIzVX3VpD>P2JZ5-&c?TU-kQoQmd{y!*t3#du+52c zC#HAm#jV;B?^@#hoqBCQ$w=oio5^)1d1($w;E)6YiXlmq4RGIYfK&@ex32ztIR)+; zn?v`7|B(YS&YxXU!F^;)jD;j1ixO=rYbcwtMnx=A2@O5M56!4;}u z4Z~a5&?>{LyUKXj&>F7MI>U(ThzCSSRL451Bz8y}jBX65fsF=~?Mq>OL8MDa@qrqW zM&01@Qh*wRXHaG#QfW{>fif3EP=p~yr)1@;LGOeMdeDK$mh8-o#=T?H8U919%H zyr7t05tkq-SiWP?CYmD@`EGH*ohbS6_Ol4Ux6H1!dBofQjW`~5`y+e`;5+>QH2no_ dF~mdRp>*dVPumRfKs^Bc_O!zgSbdEEKLP*8$GZRk literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..2d5633b1a324d90316f1b31a0c8e3ddd8739fe8f GIT binary patch literal 1019 zcmZ{iOH&g;5P*9gyF1xQ$npq;cX!Ak9;8a3HdS6^a^Q}CAW3N`^MC*WN-w({EahO8 z{sMo3zX9+52+#fsdxBb2frp)b>^I%h59m&g1ptWcLPzE~bX1<_BJTin1Y5%EA`@9h zWm$I5mLyg0D-c(+*e8KY5zLgw;eNJ3D zaq&mJ`m46Y$Cmgo^|r)~S3k>0=Q5kkbtd`KoRYvH2?P{Fk|^uoe%%787LaZU3fvF2 zLidf&$N?EAsNlY^6=NX@$f87>$~BY?xkg1SQV9*sU8`{7P+GH4U6Y-D;iE3CwmBbEdi_xtC)v;cOvVA42?}2m)DgL2`q*2$o zqZFXV;5n38h*TQXPod0>5ENmE(HR-JkEX=Kq5|rMG`=BRDOe6=`H~&@cK95b3b^Of zUMqfpMumFF@q;=f5(9*$sXs&~#<*pdE&I aAv~1s{V&okL%c(eK=&f;F$7lMAi!@EzQ8O1 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..dc56bf6d59153b8d0cb9caeacc3e83b288045371 GIT binary patch literal 1019 zcmZ{i%}yIZ497hmyF1xQn&l%9Ab=fmNDoCSppDc^nH;#&7f7NKq6!nC*LV_N$w*UE!J!2bsvxxuzv0LcMJcq8z^IYUzfUe+3cwb~9 z>#8iv9>kKQ>YrT~`_tKA+Ud<^{dboDUJ57u$*g|~LfKeK6-CBK2z4ONg%E)fAi@=u z3wLt|HV1e6{hx^jL1nPNw|h42oKD9los+?JXV#fqjp4C=HP^$+AU$}3j~?mwya{^e z=i?7x+hN`gv$@(1Z@l|iMmm?-LasB(Kg}fx9FjmlF(Qew0q)lwkZJ?zwxGcM z;3#z8_!~JO;{+Al7mi{qBmr5JXj553*_1UZVv$N{=oyyq*%6hoObI3!Cms%If#HQz zRy|y$MO>sMhL>>(myf7|6C+z3Gth8SItk%wqXJS-}pZc5`D!Y>8OsVpC|L*EWxBU1tQ zeBNut7tp9sk2rtOfJ9<|&{9=4!ap`Z$_DILr*{tG954kR^KAPZ>MR$`~Uy| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..80e6f8da474f47a3385557ed830ef33710842120 GIT binary patch literal 594 zcmZvYyKdVs6o$`5)QyzQ$tW@%CK=o%LtDsWtUN?l$v_mqiDf%g8nlb(A!CQWMf(_; z`dp=915J^T!*~Aw@LWJx^c?~KUSth<4-I?o(Ki4M28H_=2OJt6hT(-KN8GL-O}pur zn|jgr?Ux6Dy%l$D*S8OVTo@uwk~F1o;z;2Z5fvj~JYkR3?isX)>gPWsoti8^ez;g~ z>YL5#y1rgM)_vW#s~dQo_;4n_WlOazv7iRjOuvUjIY zK}n_pfhn0OL6zKA-|kO?`840VCG7$)1Aojlflh)a&>gux(jU3gqtLkm7v5NPGJYxJ zgB-37+2ntj2KgIVc^*_)&2c3z5|-%BDN*NONtD2h-v!`|Z2-+U4Wr@^#wA6frWCm( zv`;0GbjBd+J*O_aVwX!M`Ddpk`{fMHMHfKx!xb}%0Et1{%&@k(A#JrmZH*4y3n^?A Yb{T~!qgywY@i~mO&M|zPj;sLu1=M|KRR910 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm new file mode 100644 index 0000000000000000000000000000000000000000..aa10829eded0272a4ce0068f11a86f83ff4ccdc0 GIT binary patch literal 594 zcmZvYyKdVs6o$`5)QyzQ$p|_frWxENLtDsWtUN?l$v_pri50m~TC|Ip78x`2Et<#Z z)aNP<8%TC|lf?(OMy zUtjc_kM&L4)k8hBn+tfE_`FZVvvv9Ye-+7##GxWptL=944T}5^nFuWF64Aeg%3d8q z1tpmZ1meckQ zjQ4Up-)ED5Wg6rovhqBtu$tpaTqG>fl~bZlz>+9|1s?_Af^7gTI1QuX5XL1%qUIF2 zB(zT@k#xZz>J6tZJ75QeKC^YHW-4-bO@169TgXAz_T8cW%P_JTdRfNcdM`Gq0Ih-_xO$bv-{ zIY5*nH4osIfK&@ex8{GIoILxD zW#4|`Z(xB!>(*|lU_Y`FVIlFzphT0(D$0heQj9SbF{A}7;=(bNutW(a7$pw&X_4W@ zR8|~Zp(R|RWrkO98CQ;}jAdHIRSX#Rl7QA2UTdlZrwM z^zY%2wiw=Os?fn9ZR0lWFpRi^ctV6kHLRgZB8#-k=->X9+(L-pe3LD`r>!IXpa8RFJKb3rjhSU^rZ$b<(Y$`y{-Lb&g z!q*h>DWW1I1;cv`nnZJknD@p5?nKe0H=l(Eu4QJs%_H9aZ^ZGe+aKWz0N3d!pxG~I dpCKL!2c?HkMLJ-J2kHsvccepx!01~9_z9Ff$BO^} literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm b/wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm new file mode 100644 index 0000000000000000000000000000000000000000..68eddf752b2782bde1c3ac96cf4be6b97a3eea13 GIT binary patch literal 752 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/labels.0.wasm b/wasm-spec-tests/generated-tests/wasms/labels.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..72bd6be4af5690cb1d3cd6d4132b8356d4d2c196 GIT binary patch literal 3410 zcmd5<-FH>R6`wul+^@_@azaA5M9{rM)S#frO*jEWxr2B`K}AGFMUy}ha+8pRBz*ai zix#W+L9tpb)URT-QmGcJMX*}izLbBUtGwF>-@5vw4_&Ljx#tEfELZzjm^FLP@BDtV zXU~~?_C)ng?jWTUEz0!hQc3lArBaDXJxcWuMhY&uu{S+EePO6Yd;O!kgZ{C};#ha@ z;BHm6c$+o95B+o>{TyF^u$ZKRAY4yeE@4&+pIa&k{` zYTKZyNlx@n?V1=>waKj$-Nk`66~<1xs*9bRniV@8s$OrMPz{;M!QQ^HJ;l-OYIZQu z-`77-94$^2$3|6SqIZ0JWS^Q_^|$)0uR_m6M5P7FhQrOusz?V`v1-*pt5!BOWcTiD z26!Ov&`9rxT?zYq-e_fv(j`j)WX3GOELI5+uf)pIkU(G)1wYR!&?W%Ibbc=4RW?|qa!s@XP%HSZKH1r4e>p^z^P&jmoX;?Jt7G=NrlM>G+#J7Kk zm#`#Bdk$X8o<*O=dNTGjyefMfy|G8o2X?+x+k^0G?6-eZQft3PA6g}K_8h!fHYfG= zEW8Hm%WQiZUZeG7jy(=9Ya3*)Jp!-E9z=hc{nwXD=GlLupKrfHf4TiD`YY^T(6bFi zY+9P_8H^U#6X;v)8|bgJhtXdZCgf_?e08KpShwmCY2{W~$Vs_|7xFa)xt6b$MZAcw z3bSES7K6Gt(u0mVDA)0Iay|Rf#@BOOLE5=pa-8EUK}|^qs2!2+bJRZR&9a(TGh^N=xdqf)BE8vBH%oyFaw}(K4d2RZ3UV9YCb#qL zdu;#tIhxZm_AMcY#_z`XZ*$4Si zkROe7rz3aDWBiyr4)QcV&eH`caY^d4~(rr%ACQlMSN%8~YIypcL zdw>e^6!B9eKO{yAAxuK}v=crJ;UXtoB+n2(LvoPt?w=)weHOy!h@T^Qo*1nb!VH8j zIN=KrwmM;}93nnM@*^iaObmM%!WW5OB>6EhS`FTEC@(qLOOUlVS&O_({4&W;h^yrl zV%S$8dzJWAlAjWz1(4Or5hptW89N!vQR1T{KO-Fd*N97~YmgJfCrEznqJ2ON`vGJh5`ReY8)CE+WV7X@lbwVt zbh1!BBL0Zvw@&skG3>{XeM0;R$?u5K5|A~@DJMGxS>R-Wd`kQ&$!Wrm<_t0H8OS~( z{*2`J#Asfab)V$Vo$hm#@-K+LpcYi9ZDiaBTjTTR;h8rqKKm_-@r`Dm6U$XC3<9Ou zU#x2J(I!c8l2bb+jo(Qcw+1B{_FHvYsyKr^Lv|ZZgtXL#y^BwF*UoQ=IPd6ekvXX#~x1dV^G9 z6;;(LoP#=tuqN~oA%Hd*l4`DY;ms+(Nx6@>sp&3XLwTULIKu5px$ir`@|`pWa{y1A z2Xisl0T5N8!t98_PJk#J6|ge~mjFafsensjFar41c`%B>E`X>+#^44UBTIpxLYV+a zCGavpC|xG(j_e|JyO9+MUV%VjG%6KvCk~(`S?9w`SDeMyax(vsc@5)MC zYTsT8yW~)|5%NFSE<@CH!12YsGKtF)MSlivkKvrl5;uYwxUwZVm*v?DaOG{}T$bkm p2bjAufy)q=4O8EJ{`y~e;*!LL#57`k7ycNiJanll;~y5K{tX6)nC}1p literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm b/wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..774d060c420eee0517159d71a528bce4730dd1d8 GIT binary patch literal 11847 zcmcJVcbpZ)vd5>x*>n~-7`R^bUaOR=m?gL@CTIiZoFj38g(dE;q5`|Xl0kCL2!eFW#P_Q?bIuv==Y2l!ug9mT>gw)qPgl=O4V-STL19bfd7gUl z-1@qt#H(*gN=j5oeb1|};CU#TPMtb=(ulI|)Jb&5j-oqsfJR5@F84;sAl~&1=C|A1JiRjdJP&k_Nw@$!s3SBm42yZae;SLrnENBf4N?vcXhH{>|NuR+vT-H z{k6$*v3Fg3v{sG1>(hj6-OjtguWFA{)%XRP6?oNrq_A1Ldc|J#WVz6*;X`?Cy&L^P zt2{3!Lxw3R!gXrKi+L#KCTfelT8Y|X?(z-SovJyW^NB_c3JSd2D@ubD>*cp6h0?qsaRv_Om6cl;Q`E?6%)nO1JN$a?;4+YVR{op zCKE66OEU3dza$fX*)Pe&U&)q!$%(g56BiSI)h}S;ulWT`{PlPt&+Fh9F!7G@LY~(t zJ}@R;5-(xmr7BZ~iqE{W%J45EQ}3cGCd#R~cU4(_@A%})RHR|MdihPfZYl$Xq6Q5M z^1SXU(x6S7f>*s>Dzm)uoEOcAq@`zMW<|5JcHP!fSubXyIZBmW=DAplOVJ@mXFHF) zDmuH0_FQ^%*S_tgs4S}^wK=*Jwl-|vI#KOKt>;Qab^1R_nRqW{XfJw&=b|p_TF<-5 z^IVq83`&_UBPeCKj%bRegTMr$<-AyVuu8foJuRL}w3)L!dsffLS)Pn?`&pyhe%2@{ z&mTo6t`Lk8OU>mDe7?MBP$APnMQQCsh0G{k5lr77&i>bM=cR_bQ-+g2(V$X>3@VS* zPE^XUsmk!sY5z4e7A`5-UaVX!7OU9&!dQi9!f6q93c^myu+u8+v<^FM!cN<;(=O~3 zhMl6Y^K#fJ4m)+j&fQ_>p0M*k*ts|CJQ#NF3p)>mo%_Si!{T5`{iVW#8uGB}A@61- zUSb_%mEqtq@Uhsr71KN!r+lK~yo-|8I6qdYL)hsUb~=TflCV=6b~=ZhE@7u@*eMG; z-NH`yu+uZ_^awkThMmX4&f{U{>9F%e*m)-GJQ;SL4LeVTo#(^}?m(rQCbZ_2ZVBIk zO1JuVAkp(S|6cj`14|tHPvU-vb3w)Q)cuf(f2Quog|UkUB`*(WaM&3Vc7}$X5n<=~ zu=7ILc`@wN3p+1`o%&&CSlAgZP7vcoxv3a2)7a&S7{&Ql#f(&pQt|IpjF-e{LUK?z z6T{A=u=8fvc`NKR2s;hKPNT4s7j_zlohD&ta@d(7P7ov2^6$8RA2HL|6^R(dxwK+t zDn_Ze%#ZP0PnX2sJmZpYtofH z_tAQfjq9S>y0=h_xIxfqu3MSqba!T*#~E%nbfzmqO_p1Qa@5U%&UTZb%ejHj<=vUJ z9#?ROpkroq3bz@$ zidzAFrTYN-DmM=LYS$I|8nsJG#tc z=XOBf?$$%!;Xa1G)4dISmm3aU*Y$wD+Z|u(@jY%Y^u2B~^nGp_^!;uY^aE}j^n6$7TTx4DRhL^+ zYi>hrsFC!(lG~zp+Z_Fy-}^Vs?Wi3WqIVG$Qc+zlrec1XUZ#f9yDqcM4h+>!YX6%AHA zL=oggA+O<~LJkGF%_p~M9;RrR;^9J$Py{;y-rKkf(%vfIk)TQ;>^&a$(fqBDB7aAKuaQ#Z}sH9_tZ@-glqWDk%7d~$&1o|<}U?j>Yz zBsWdHLH5zqM{{3Ikb8y9;eJB)1BohpBl>E7L(?0Y`wNNDUCb< z7IH91TnZ$vhG}EYLxmiMxV>OS{1gR_J6FgqX@gPfmvQ+Z~O}MKQg`9-srfCw$H#NPf8BYu3E+KPyijY%4 z;%3OV5D8AxTbic|i6;_v8pyXby{&n=Cdi#aKFRM0`3^|jb&w~J;56a6e^^_tde-k=F`n~=}&=R$rC5}5C33 zC**e^k@7$y>uuA7@9%aYzejS@^gYNOns#X3sR?qkkhk(KA$Ng9ZUwms2~N`wns*Di z2gyy-9*{q3`cd;wnjkj``5f;RaxX|EZ;%_2;56;iykE!zNN$=Afc#n0&zcWvg47c7 zHa;ZeA&~eefW&v<7frutJ}l%BBsWb*Kpxd}RP!-SkX#|3=U;{V6(qhsAXg#5Y5Gm` z??V28%fT2>-+BY(RD~1lz^b<*tUh8ZI*gxlzbE+|7XOX7K&=$%Tr$ z8|rSjhmbuD!S)2%%TO=Fy$wNX2>BxS5wZ`+c|JK$abH7y4fhlB4MVVRfb4Imzu^If zAk~F*JW$AiAZPm|{%tYH&>+Kug&blCb_mF!hK3p*W(ZPE$d`Dyki$XF^vRiuM;IDm zc%+b{48e{9Ioi-@!($9VstQ?;#|k+XlNC=lG~Mt! zLe4M*I|JmqhTb*&o*~F}Lf*me3;90C2|hVN@k~QA4bL)^#UB`g{Q%^LhCVbr+Ysbh zAsg^VLVg5tj8BeHJjc)+!*hk4X9#v4$oYom8(v@ta*dF8^2b7c4041|j!?YN&_ctD z45jlYhG0Jd`Kh5#4KFqXxmw7E{F#uSfgIwKLliGDw8ZdIA(t6~T?TTwq2-2G7=m0S zWFuZFUM(xM#t`fpkZTRCHN4Ic-ehQ#;je}K#t`f`AU7M@YX{eX>;XPD48l?-KF{ zL$E)9+-+#L;XQ^R{}J+K{!z#uL3WTAy957Z=qJN_h1+Kcb|1L?hV~miUW3U=3G#2@^0~io{lV22u09X2 zG{Eve;RacP9RzN$rNPKxmLUHU?lm4N+)!{Y2=@XHvoy@|aN$N+f*k>Fq@|I_UzQ*j z3)h@S3pX0vGr~Q?V=RraJXW}ImSD$$8*gbmvX>>uMZ&$#6NQ@y?g`kMJ~0(=5L&+;mH@)4{!C=^bP)OOSsG*MZ*^ z?p<&X2=@TLXX!o5?+Z8666{QHvn`3kTuc5`xKF{= z5v~p|wzSytXTmM91iJ*>QcFuMFS7(WU${=ZT)5@nZV~PlUSVm4<(0y%vIM&d+-gg! zk*_R4&J(T`uN7`BxLo0Kd7Y(ome&in!4m8SaGzWH9NEee1*UFOOSJfYt5U5+YIgo;cnn9mbO^_R=BN}V7G$%&eC_tRF)tW zg+n6RF5q^6*9dqGe{bn~%R244>*1w3d8_8`DRmJT6PS%Q=ouq_`J z?l3qKj`)bBBbJW}cgzy(F>t?H`W2bV5~Q4PT@?Q=;O_u07Vu*J!_ps?j|+Ih66^_p zCoP>ss2p9uAdaNh_)GK9ltsGorS0A>rA&2L2LjR^M_a6p7$2LK!xp@9(|6d_2OfZY@i z7H}}Y3;{EENQ8z&cxVJmGb}=|!vGGC(C`S4h!7+qV0XnM1sn+wYg9!ecSUGaghvZF zCPJ`d0FI5&*a(k{5X1nK-`vLwI6l&xCq!sMq_S5b+DJu9F7sHs7|XZ7v|!ws${yi2 zc(Q~o*9tKBZ+!;YYrP8iNnUX}rBQlY&cMr@Q4agToJm%upGBFJ74xDPDheptoUljD40KP9RFg_*_(-a}Ernvw{)if~}UDIHfn$u8BlL#XcVfyXZ0-$ut zsA)WkTxl|J(M-yCjI%I{EbLzNP*FfpJOvh)$OfF#CzX}>Yd5n z$?6k8miua7W|Md zEeO{?BojxfO2qh~Jz&Bu5;T5@4>5_+ByRjrA7T z`={z9;yz0g5&LI>;#a695s!d$-C9dP~sQjR_vrM0ItE8Cx~M!y%`X;{B^j(Adcd9;Z-)M2(G}1c3ue z0U<$SA1Fbj8YE_H6D5eEdcp0lE+JzVDM6$fB;u~ilSE#UkeG+Y8xV6rszIWjnk3`| zRWK`wdw!BgHPn#E*QSW%bZbcD+fziUK_Wk#B9hasA(3PEEQkZw2m-7jkz;c$h`ecX zx-}$n?7bz3RD(p0t-0VW@=p-O1F0dQW9u$>i^44uJGS;mU3fN!_w^gqeaIz4~&=yZla<(jJkcGew zWe{(uK^6iVn9+;;S)6qmEkONeVU^zlbNSzT$jV?tG!egljw*mWwZK+x&_9*GWht=H8}v`r z%SvDyIOvc39SRX&&_7i#QDX}^TFIY(;uKo|N!-|FmPT2$;A~#dD3N0$8mT}c zPb7|-5;%6Lr5a4K+J6?})##l_95p3u>~9CXlhqP6Hot?h3yR{GtSLdSN%l@wOU&3d zPxKCQRZR)`K&p45S|UD`?A)CXi(EU}nIe zNYHAvzADvfwOZd+tCebf)hCLNYJJrgANtkL?ebf{bglmPy*Ce}S!bQc-v8fu?0Yl! zY?CVulQD+Yx!umhgz1hkwF(`)RF!B_fLBRh3|31iR4H2r1GPsfzfQP zRLU32#;B=cI6qvC-FXwM@<-W${`TI{kv>yVJv9yl@w#ITfh748 z3Zp&8NEc`f3ZuEc_FP|IF<&Z~g&G63oIhn+J^56t&OB)eu;qGU{2z=K_paPg9KEK!G;nR+tcc~t#tM5)du5yq-fpT(9;s`K z8ZY9ei6$14^@f_^NINNO*t9ySR>#=*pdH`U4C75*YE3%_(4L0&jxN_RZpt_l7Fv@s zt`6YDpbCT9Nspx}GvCHTOGPN~Ej5!swS%7n*R7joe2Y@E)D}?H_|Z^P0=vX2HEvDN ziDC;eORkPd2XMx4Lf;=a)ubEreQcN-G2n3M4=h;U+vrA(op7rHr*&+^tJ6{7ogO*9 z8a{7YX-#e1s9{n(!w~3?F+}_+6mjtc{DI8qH_zy|7&jTLqbCWwZ3tR;CL2%tj|2PF zvxWl$g^jNdWP#@tGH#`@Kd5Sl>xMm>9Mpa?un$cs&YYpxJVSAoZo!|U%eW6z(NTSY z#MlEQ#0c+@IPA2L{q{p65la%aZ=e^mkD;!xx1x^Qe}7;kVUtp6kD`~fZ=-fCOUgch zUX?XcZEr)b#{TPw5zl^sy4Fs}EPDvOI(raxz5VfhBeU&4QO~g-p`L3Gp>DAEqn>B~ z`<{{c_6O9B_AAs)_AS&4?6asB+JmSU*&h!ZVOt?$kD}LX-$cFG#-+tRiQW=>H|nKc zOqQ|3%hJw1c3Pc%(#ox}oU3I8FXt5*Ie|}*Hg4mkUYl3p#ibqM_Ovsu;&EBYE9FFp zSMiCwDkH0TwRCU?FM&8AYam^dcFHO(%UWJ5Cvl6U`6Nzfq?0>k9k1iXkXCw0IT_-U z)6STR$7DUPms2qB20n#1WaLynRer`l<7S9mISta&(oR981?l20u`F^rTRuG_XYd)a zkvB3!nvydiJu~g>ROwF1a7NC;tef~O-jtEE`D{6d&*4RoR>`@Lo||_1RN5z-d9$3y zQ8}N_on73x+623$(Tai8QN@8>-CXJiNOke$4f=VK$YWB}5Ew6jH} zTV#+2WeCSB@DLX=GR(s=!XrEn(s~(%bTsX3R_SIL<1yLAv!uwoxR{X=m!!;PZh&;Q z?1prA+S#PiO|pmg$Tg6T^EEu4k-fZEuH|caE~InhI!LceI~!HHQTFjZxgOH}d_C{a z$OKQw0b-On5YLqx2uwD;wECWH&I4zCcc^E7sM#Dfi=i2iroTi zgJK)xR^nSpeyP}P#At5=c02LyBzF*_)B~F*cPe%#uyu;9le>uTBKehKcN3$%8`weO zgCxHuMyUffU+z)t9$;$~TPybx-%Iiv#qJ|Udmpg-iSH-*EipPB>_uR#7|TnMz!9SzF&#NSg3)wsRn>W9g(ol;CK)sllg-B+eBa-z5qBPbKscAe9_#brO=~N`&6Hn92p@4oZqsy2k!U zY{J1RXQ` zN$}z>;?CC9eJ^sHaAJ)YZY%DbDW4`fp;M!T3r!GAADm2|j+tMhh1-w2aB7Yz+4Mph zI9!z6MaPS#SM1Oj;$rpxR-EzlIy9cRg#~YlpLS)DVaPKn^Xma{iw*WS>7TiP9sn0!cY#Jc$iK3he`PiQ3OAuo L*tpUEG#m3jgV+Bj literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/local_get.0.wasm b/wasm-spec-tests/generated-tests/wasms/local_get.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..56f4579870c606acdfa60489b4589aeaa012ff28 GIT binary patch literal 2751 zcmbVOOKcm*8J?Nlf=Jn$m0&@n)4|s8 zLxi?6{6$dxydp9w0M+&NjaJ)pjbO9Y>ImhV<)y_I(AgEzN5Js>`r3l%>S&_d!NY2$ zrOal4ZC18F-&|`U-3cJ@wEd{ECVE@>i~MT7ck7xgvN-xOUX+z2cwtm@5br&-ld+0Y;V8?xk% zs!Pzb{UpEXC$-;C)=WRyC=S{Y;8B#=e!qLIC7u%EyCOT25spk_dE=oX$4DHId`gO} z-;(_sa-LG;fT9N!`)TWOqe7YBP+MUg58Fu~Zuq8U>gb(>c|R#s(fmlHm5@q{jH@Mz zLa|&2ACz&E__yKD(J*K>v~)~Azm5&q4Oz1rs;(MHsfOA?U6XZHi#Dvfg?0-AV$kyq zWZ#agK~+aG?ikeA4+s|eTgj3H$rV`$h*%S`gbtsqz>wYL5#a#&^2Lg7^fSYrR)KBw^!l;jW zsn5%4#W~7(amJ)mzptvMuPUFQ6O=3Q3;JJ>o}?G(q?ent_!OP;68s{hFBYsh)5{za zo>RA(^$&k9_%tz{hSxvuJ$Y>N0E7d+dO+%|dccD;=(+q7u$RWwUDMB9ewki=!mmv2 z=YDXD^YjYk@ADbG4@YO|44p-vyUpiogmDg*=L*&=sdLsW57Cg9dIIUN_%?^p3BFjC6?KrFUoeJ^eQb->3KJeJ=-pJ^TSgANVS7M0x&@KBSu^zN`NY z**&^T_aM9N_3}rMedMb_BOB!Vbbp2)=pQ3FKBfosF*?PH*tPi+$UgBEP5$Fgdrwe) zgn2CkD;KOjvr34us?J$`9B79hYMbXLB`?qd%~3$}^w3Lbvmk7)z^LM@Y|}PoY_q&* zY-9W>^o#Uqs891FNFGgC!YmQNOSE*r%d|{(z$>)ERjQJO@Q~N55Uwus8m$dtLz$PZ z$#|tbwm?`bY?D1GNFcv$axRMuD(R~j*~22k5lldoA{70MV^}D$l)x~@$?uaBd**d0zFibP6yeJ*TVay=V8Bw?Fe#=ep=-Mc@tyRf4@6K-$W z9FyhnxGv+kro~{XN*9DM8`3e>A8WD~!D9DmXK@HO*-^0AW{$CkwqszivmCPF5&yq_ zFM-8oa*RE+^}%9?XlIZ5Er3O~A7c+~$H5}O!3JC9@Cr~4uK>-MC%_`7o27Vos(bPnT{bs|)>xYXLz22DTAJ`4(dNYr8nV;P z8AbC}(Z-u$Lt467!y^K7$7ne>V}@irqRfq>MVSG^A?BvxGB^yzj0A28-?0$?1w@Wu AUH||9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/local_set.0.wasm b/wasm-spec-tests/generated-tests/wasms/local_set.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..56f4579870c606acdfa60489b4589aeaa012ff28 GIT binary patch literal 2751 zcmbVOOKcm*8J?Nlf=Jn$m0&@n)4|s8 zLxi?6{6$dxydp9w0M+&NjaJ)pjbO9Y>ImhV<)y_I(AgEzN5Js>`r3l%>S&_d!NY2$ zrOal4ZC18F-&|`U-3cJ@wEd{ECVE@>i~MT7ck7xgvN-xOUX+z2cwtm@5br&-ld+0Y;V8?xk% zs!Pzb{UpEXC$-;C)=WRyC=S{Y;8B#=e!qLIC7u%EyCOT25spk_dE=oX$4DHId`gO} z-;(_sa-LG;fT9N!`)TWOqe7YBP+MUg58Fu~Zuq8U>gb(>c|R#s(fmlHm5@q{jH@Mz zLa|&2ACz&E__yKD(J*K>v~)~Azm5&q4Oz1rs;(MHsfOA?U6XZHi#Dvfg?0-AV$kyq zWZ#agK~+aG?ikeA4+s|eTgj3H$rV`$h*%S`gbtsqz>wYL5#a#&^2Lg7^fSYrR)KBw^!l;jW zsn5%4#W~7(amJ)mzptvMuPUFQ6O=3Q3;JJ>o}?G(q?ent_!OP;68s{hFBYsh)5{za zo>RA(^$&k9_%tz{hSxvuJ$Y>N0E7d+dO+%|dccD;=(+q7u$RWwUDMB9ewki=!mmv2 z=YDXD^YjYk@ADbG4@YO|44p-vyUpiogmDg*=L*&=sdLsW57Cg9dIIUN_%?^p3BFjC6?KrFUoeJ^eQb->3KJeJ=-pJ^TSgANVS7M0x&@KBSu^zN`NY z**&^T_aM9N_3}rMedMb_BOB!Vbbp2)=pQ3FKBfosF*?PH*tPi+$UgBEP5$Fgdrwe) zgn2CkD;KOjvr34us?J$`9B79hYMbXLB`?qd%~3$}^w3Lbvmk7)z^LM@Y|}PoY_q&* zY-9W>^o#Uqs891FNFGgC!YmQNOSE*r%d|{(z$>)ERjQJO@Q~N55Uwus8m$dtLz$PZ z$#|tbwm?`bY?D1GNFcv$axRMuD(R~j*~22k5lldoA{70MV^}D$l)x~@$?uaBd**d0zFibP6yeJ*TVay=V8Bw?Fe#=ep=-Mc@tyRf4@6K-$W z9FyhnxGv+kro~{XN*9DM8`3e>A8WD~!D9DmXK@HO*-^0AW{$CkwqszivmCPF5&yq_ zFM-8oa*RE+^}%9?XlIZ5Er3O~A7c+~$H5}O!3JC9@Cr~4uK>-MC%_`7o27Vos(bPnT{bs|)>xYXLz22DTAJ`4(dNYr8nV;P z8AbC}(Z-u$Lt467!y^K7$7ne>V}@irqRfq>MVSG^A?BvxGB^yzj0A28-?0$?1w@Wu AUH||9 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm b/wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..30aa85a5130cc7e17b3b8b13095a997889ecda80 GIT binary patch literal 6619 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/loop.0.wasm b/wasm-spec-tests/generated-tests/wasms/loop.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..670f7beae61d22e777e0061b090c2fb9de94e3cc GIT binary patch literal 7877 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory.0.wasm b/wasm-spec-tests/generated-tests/wasms/memory.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f7016cd7ee3c05bfb9302947157e8917bb6aeeae GIT binary patch literal 309 zcmYL?JyOF!3`RdmySC%?46Yc4N*hw-1a?W5i(nTXhJ=uSGYmA|6qFPkgJWjUhu0G@t872)$KeDLYna6t zOGhHICI!weB~m#5!bODdf8-0Y{qgwp0bBl%F{s5gMDYfp-YpT(a223fbG2rKd>h_h zmPvkYX4~*N@iy^m;~4HiY@|ujwwIvZsHoX_t9FH&)hb%KN}yKi1a74W@L5W;hK<@a l8=v377n*C)O8V{>x~NS$Ri>eG>z%q4E}SbVHJzyy_ye5MFvjUhu0G@t872)$KeDLYna6t zOGhHICI!weB~m#5!bODdf8-0Y{qgwp0bBl%F{s5gMDYfp-YpT(a223fbG2rKd>h_h zmPvkYX4~*N@iy^m;~4HiY@|ujwwIvZsHoX_t9FH&)hb%KN}yKi1a74W@L5W;hK<@a l8=v377n*C)O8V{>x~NS$Ri>eG>z%q4E}SbVHJzyy_ye5MFvUe5BL2z4zDNRtg`*EABPi2tYH>o zEFFo++7xEaE+tZ!f8ip+_doIl+5UKZ`hYEe$Qab(8lrfEQ16xqXt)YcthrhOsZ&cLmyj8nG&1w~`TqRH|bpp3i1o$kaS;I!{ mnvKuz;0w*QXeE933tiMEohs8%x%E!n3K!0ml$y@e3j6^d3^7Xp literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory.25.wasm b/wasm-spec-tests/generated-tests/wasms/memory.25.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c0fdec8b510962b5208a8713532162dc2a6427b4 GIT binary patch literal 5111 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 i|am7S!IX*F!m>qSi>yF zSQ?1PW+}|G$u1>Qn1A6S!uLP&f^0VoPam-54;h0>Tul^j5UTwO0W~iJ6dPV{7$M(< z_m@?YpWCyoc}~1d{MtH(dk`CGlC!OkL-4|L^CY>tNP`UF?-5M9pm6V#!R0{k7qi-?J literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory.6.wasm b/wasm-spec-tests/generated-tests/wasms/memory.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..08cc83195c437a7a2dc7c058691aa88dbca91519 GIT binary patch literal 570 zcmYk3&59F25XbAIzcM{T1_bdURL30RLGYA-mrZ-{0Xz$vAR{E%xLIcr^)S5$y?O8v z_EGlHtcil2{?%1ozkgLXZ2Kbu0M7h|N`VcRQm||QHmE1ikcVM7N0f-WkDu%Ay5C)2 zZu`FbbPF)1+_5|M-7O#oPsEPE8jB}Hv<4OL9&^Eb_W-d#zW*ow5&5xo_pJkKx2Mz9 zR|wS)_6AyxOT_XFa(kFTh9%V*1Qt{;2(sVjFE=wyeqWE-CEclBsQz3>f@n03@37JK zq=1A1f`>#xbI89QAaRCdTAQqpSVapdI5~02i%CJegg0p-lT=A1+hd4xsIYpBlZ8L&5A+na}MKD w65ggtr>GieUDTc^u{G*YYj3?zjWpwm@u@yEL^!`#Y%l+QlziCkuH+^B23~_wkN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory.7.wasm b/wasm-spec-tests/generated-tests/wasms/memory.7.wasm new file mode 100644 index 0000000000000000000000000000000000000000..08cc83195c437a7a2dc7c058691aa88dbca91519 GIT binary patch literal 570 zcmYk3&59F25XbAIzcM{T1_bdURL30RLGYA-mrZ-{0Xz$vAR{E%xLIcr^)S5$y?O8v z_EGlHtcil2{?%1ozkgLXZ2Kbu0M7h|N`VcRQm||QHmE1ikcVM7N0f-WkDu%Ay5C)2 zZu`FbbPF)1+_5|M-7O#oPsEPE8jB}Hv<4OL9&^Eb_W-d#zW*ow5&5xo_pJkKx2Mz9 zR|wS)_6AyxOT_XFa(kFTh9%V*1Qt{;2(sVjFE=wyeqWE-CEclBsQz3>f@n03@37JK zq=1A1f`>#xbI89QAaRCdTAQqpSVapdI5~02i%CJegg0p-lT=A1+hd4xsIYpBlZ8L&5A+na}MKD w65ggtr>GieUDTc^u{G*YYj3?zjWpwm@u@yEL^!`#Y%l+QlziCkuH+^B23~_wkN^Mx literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory.8.wasm b/wasm-spec-tests/generated-tests/wasms/memory.8.wasm new file mode 100644 index 0000000000000000000000000000000000000000..089b1b39a5c69fd30e64dbec85da390a69bce1e7 GIT binary patch literal 571 zcmYk3zm5|z5XR?^y>`~SiX|jOg~lO8C@5$WiH4Yh2cSl}L}-zcT(}&2LI=hAild|8 z5qOk)G-d-5H2%h8&+nVDVcQ=O0C46uR0?dkl!9dgutD8{hCB?zIif_|efrXLSN-nl zV%zuK=No`ARUNxy-`xPRcSKwfSYz>oh}P(W)nhK0?;ao&$iM!Hdqi$5-F@r8+U@Cd z`4xQqot=TmVTo9tL5_zRWLQ#@L1016f*`wnzP+Al@_s#LmvpE4TJ^^|5Co%fc#o}? zCj}%F5IiIjnnV8i0Esgu6K%3WVihf<;8aPKoS5XriGQ0WGD)@6!qF)s=+&@KjWlzZ zh7TAhnO5Anwv=-m$M9Mb{@@g@WIzl*m znEyNmwuJ^W`fwICU@-^f+c`vSTVTacRB**ng;wkpT4`7Q$pf%8`#eGxiIjC-Ae&T=!3hz{jMQCS^>tU(QB_f^v!IAb9WBr5ZkJ|F zx7$_SS)y4bClXQlvsqnT-8l9vs;gO>_Gh1`?ZwWs#hF&8(_UU7@~UW|z0hf|kTL@` ztxcT7Nh#JFKZ=4-Eh(i!qew+VrmNiAI@vC{U*BwQ@l2dPUu=Cc(^{E%*6pS7Eoqvu2gpq zxom!v9OXK71ZwECp~=N_?#maWqWoskYjeFO`$gHmowS;4iQLy~fq>TbB&YLt+GJCk zIODaE+@B;H$aNc17F9))h1;wCkn|4me-D2I>LZDa$sJ<_f|_RyT_^YE4Y6^C1NVbS zp(BpmE0JQSIdOlj6PMhdvX))M*8MJ0>H@B~UqtG2uVt;epJdJ4ce3_7#WnXzq=Br= zgU}ev^&#knKEzwFg@;h%tr)`Af`>88+prA-Sq-(U#M=elp6iB(8@vNMctqfx7{Shh zcVQRr#%}ayHF+0;BG+|~)|tUPiiG!I6nhG;qt1J=7nz_T?-O)iF1VoJ{n*b9L_CHD z#tJ@w1AGt%Q57^2SOUeNT#tBogb(8|ACY&D;s}lwd<@5U9OLMdcqZMd8kccmXWm3VB0^yI()Nc&<^ z+5}-lHnVADvosBDR!IY!^`*vU)l}OoOO?&~t$3|Sr34aVpLp+^<0`5?1N*&B$v26u z^hOOnZ9RLAaU$PBqVpqWLpLEhX|DIU6b`XNV10F;$Y}8(`g9yB0 z#|7X3Y*}ytR_wR{mmn)3g3zY3>i4V6tjbS&y(2|Ls+sKSvZP&8mZd6piFTFjR9KsS zzyEisS)1HAOa3CrYWvC{ppLDV0C} zMy@3P`+rDsZJ(YUzoIDGJ2^RgLuvJAlvv7*E0ijy$ma)>4T z81C>0MtBsX$nylLz*hynTIfcA8{9yHuL*n|*KobVV;JLcjH51a$b3WK8-*SY@G#%R zO`brFfeE0)4CYBp;*!8Mfu{tXDs&#;oSSI!w7|D8jawa_!3?+1LME^icvj$9dC~x9 zd>glU4ppAV9OgT`fCXN}A}arSUJ`hz&}o2EUdA%7AmLT4V70?*SmSl9BmUR(hQJ$z zwgI+Wpx`zv-$5I9I=qQZ-oh44o_O$GLGSMKJ=|+j-91(=%u4&5jr=eNY+;)+NRD6; zZBbo<3T@a0s>{3-Cy0@pa;mqH*2E)RfekHIQ9(5)C#jqqa{HVi3pM&CDs|t6Iz}3> zFt7)bKWb905rNvKAwji`j260WQb`)iG7dM2!i|!L#3^K$Z9|A=O)5nzNFQ-kx~SGD zkDZ)x^2$~!WO6p!=Nf9Ey!)t93eIu0o#1&q*?V?~6{6s&0c}+@aod2lCYpG0KwB40 a>^h)rh$fC6&)^>#Cw{Q&p9!wu!ctcq;78 za5((C)vQhb*{iI7IM_Yh+8GS`FJ2M_DL&{Q4EirgnKaSb#F`=-sUxLSWMy&jgsGH2 z{z|SQ|NFm5a&4cyIDAb}v~zUy^ev_Jk8xrtH?B~snkJv`Pm!lWXP!VEopm(%WY52O zJ|*J2UQi2tEOt%o`<~O}V$pi!ei~Iu1SStwAgF!T&~5U+z7iW>vGvEtmLvZ|{Mai_ z{CC-<-f_(n*Znu~oR2v3F*p1d@lJTdO|LokpT!&VpJYAhKgfCt^*rKnXp9$n61t-& z`7}=R1QI@j37jdpg%+R1S)9rfBm$ok_*|h|0dDbmoaae_FJKZEO1_ATdKH9On22GQNo$xLNWo+~Rr6!wDP;To8Dn&}o2EUc@3Vp~lNt!g9$4 z3httd^xvIV1YRk$4Y1|gxXr7udRceY+;m&rBntvY} zF_Pz;>K@Vt$y?W8Lp^oWq)KuU%E=+O#~HGaV`!pE4{gX}~oa>mJ@wvr)}v)LXu z&XH}!nX0EXnrUj38cAsLNC^X=Rwji3c=7_c^nl$f-wj`Rg_lUMEnhd~*R){9! TF`{)vlMx!xRzxFb-+<^3@PfFz literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm b/wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d5564dd917a5dc5caefbedeadc24e78b5f2a84f3 GIT binary patch literal 1548 zcmZ{kJ989A6oqg1%1PC}+EUhRBIavERZPMIM6CE znFIdkGkEi z>5hwx8?GpEVZtYxpPvsRr|(s(HtKx-MYS_C_hhC$F*nzleJK*8(zDL9xz0;5Q6;rD zDyLRTablhuW0J^-DXosW#xJ}P*A@TQ+y91gJ&He_o%vFd<&&RvCZ~t#Gc)^Y`0LK> zjFggz=g*(Ml1k6_X&Orwx!joUX7Sndpm@n`)eEFys|_o@JmtT7F-Y;7R#0=h!0{Nz zZ(GiaD^Y8S8>4|YYHcfOL54-t!g@JfGZ2`|Ven>33Bz2hiF2^-*ThV+s)`@c_toWhEvtGuk znlaX^%l$uZL|6DoSNcCW>tig{Rg5`Z?SH4T##`<8zi_seu~^qJR@U|YM=AsUJAOA% ziF6}kY|Ki!2^O1jI|SRXLkd6@u?|8pSmNZrg zfo*6Mx*gkf2Xv0^%3c?wd)B6PR6S?gRc%PocNj*jH0;f$t8ra05My-Zu%~%xxOrRBz#y-bSi-a2t0Dy^Fhg5BE?eoS;PS`^4|(HV$~K z5AZ-A()$q};!&Y(v~?Wgh_aNobb{!_ls?Aey7an9FinLyh?;>Du`?)QLP; zAVNG%|D-ONZ-IDC1z8QA*QNI9WJR5>8Y;E}Ei@v>6GK?NQ326{Od+hr8&h zNmh2uad2783RUJ-r?iGzDDQr@RSEast!uyUBkd1;q#gPQKACv(6r&>HnYdaz^qUXb z9%_6{ODByH;Jf=MX)iUt&ZU#~5#U4qC@H7*nr&~%?KKIoGklb^pBnqe(n$vhu-&+2 Y|2xy@2t{@#w|>b#5q^cZ_-}~(3orpPb^rhX literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm b/wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..76158199724645dc82d56889a99ff3f4fcff7ce8 GIT binary patch literal 4251 zcmZWsS$AB;5$?J(qZ!Q|NmsIL%aUwY$+9gQkMYLH7!%Y61_K5R7%=N-B#mrIqs230 zW3y;XAP@+IE$mw$CTw8~1i}`~Vgi8xc_Jry)vD=_RI630_8Zer7#XNAqmN8aPtSM*gzs_0i4-RGr3#bfk;z=X zTrQL<#;B=oyf9uaR18H{ryVDfs849qpJXx-4>VZRjGu7qIHoQdqbVYaMaWQHN3=@T zxabZZhA{RYM`|MeVQiV3FQ*4e>3#X)-hzoW_@ms&aC&fZV#w4r*2V!KKId3N082Cn z)=GY$SV)gd3>Eg9`eSSXJ2`(g&bNhVw+Wt7p|ZC$5iTW_gyrZu8p1(kcVWUbhJ!+} zTrf>aEEkG}!Ag2~q*SgL&zrH73;s5mbsHhbH?-(J2lK^Z$Z6Fq_~Y@BAu~61bX3eE z;JkU^Fo&IulxAj{-+G)w>1}h5Gy8EC93Ll0ReK8v#YxP+8s{DEzhlN&DHK9ur>1{b zadO}o=t9jwaWX%Y&JPWh3gxm{q&ZN_`8CsGKP{EXQlVyIKP|o~I3Lk7E309K*X1WT zumz|k8fouDzH}fxIaMg-@tt)0-^qw?D;9<;W~s6U0z+wJ*Y1j0rj|;fT&auzFW%^4fHHH%zx@k`G$Ch-| zco8>4R9!;W8|#824@0%Go3WcYs z2D7F)ZgdmV?F;A^*?ZA1wm%#;!nRJteh00~zK4E^J%qm7-h+Or7n5b|@Uo0kWT(d| z%5q*VJsg!4+`}ufvXWQI348)C_0nFQ7nfB4ugW;P6}(&0oR-x9pUA8E#H_60HL{l1 zayP&USqJF4j5DOrAz9DsWdn3ljfpeZ>6&@(d5 zPKEB2GxdL!mq5Ts~K}aYD}HZG2u<&gb*x z0=|G30oo|r0o|T)AbOnbav@(R7a{7!d=X!ql^wi8F5ydfA)rliDWI2ToNWr-CYSML zvJ=qDc_&|rg)C*;VIsel@gbv%w=u^bgonYtz;Y=UXQa; z_VQlY2k5oDkFU+je%>z!_yErbbe>!X=ye%qgF-jR^?beD0O*Z;1K*gHX`YrUS9uQH-3l7M(H>`&+(vvG z$uE_5J2B+#pxr@y2g$F9(ON-UAa^S5PSARk)+2Wj-$n9krQJ;oc{gbH5Z^;`FELsR zXdPas+^59*KSszAV%{*Tr5v2?Mcu&mDVXw5kE!pTctfs4EZ!@&k#RD@;hR* zCeYXuughEFb;}{89|FBi>22~X@v|hqCvKGIh#{W?{dwZ&NnRjEYXE(zyr{GnL2Ff7 ztGq<~63HKkQ}Qw~Pv8U-T$GB!>JDw8O-QNj@S*s{?I?e5|yOL5nIaDxVO4Lh`B7ju1m00qry5&q)4C zj1~iJrF^cm&p|UvGx7!T7bJgE+Ly$TUxM}(@mC~&Cq|2SX}vqXR^Hb%D&G))L*3Nm z4w9=ki(@^Bz!w>lC`Y@AahY(GW1CD9gukt5+BD&AA&GMx$M;AAf69plV{yT7RJWYu zdQN)AMJN{}cT`fG(m5WZSgh(yQ_CLA?moF6IjT0D6U!8Jd0jSSEB zu7?-bncMjjZ%&`;L4XZ_d- zmw&LW&>xg6AwW}uH$t%95HPc-wVD<@B!awZ`EpG3lioga5hy}UyOP`+rG#z-e1pvQ%$%W-h5MjM80?)f3 z*+K1+)3PLV>tW&@7%U)k`!!1F*9GFm82Gi&`AK*^OS~%se^}(qj;|ZQ>oZv2QUB}- gbOU&(x(hXxK}nR;k|?JoQMd>_SK~(i*=5ZC0q&CB@&Et; literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm b/wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c4b2f3aaf8bdc8ab06566624367e1edef12b1ccc GIT binary patch literal 1110 zcmZWoJ&zMf5Uu{28BdS#unUV}S5Uodz=sIngpDp?8zg=JDSbe&7kZ36I zN5K^*L$z2e@OK&zAW0`xdH6ajr`6tcP*hbpn-hglbWk2t<(!0SXHu#-Nm^+lDbhw9 z2_cNeM?@Q{7Jm7OY)$^lsfnw&^R}E#2j%N>_GbQK@9;U9wRu_12i1H!D+lxGU@|R6 z6s@mZ|1Q{cZBplbI)`Ycjhg$;V@V{Bj$?KXya3Czr7IVc+dqN%k@lLJE1^n4~c% zfuQY@{}wP0G4SO*5EGQO+d|eW&yhENiRU;J378X1EXMYV5GTm~@bA0#GGO)wuJ3PTA&JZt~cH#92=!ft$ECw*&2r z{|H)#&v0i&OI!|GeoyK^)9x&v{oAea8b?puIcZn~t$}_0h1a))lws>oYI`*lsL8b(t0H}SZS?^#V&ah_lJ9S`0SgO87 z9T#~4p%KR~T_SfmX=76%QwJF-w>ZtoqLf9F9YbaodMuQwLtzW-=HS(qr(${9r}TQil4H@6fjihur_ zeBIdD`11(#+pF^rl)2%>#px%i)qh)WsWhRZRCPeHoVF-ZM;DQpj&*UYDdv;-@v;T+ zOE0M%eFOUp_FFG#3Ko9IanPf!@KviL#1TXi#l&hVnsuAvuUirmGqI7x#h=(^(MleF z!1GZ{Eh?$U@7RUXNx_;6RKXfGNP`=)z;$Wz0yq0oaw&_v$f5LHFEijvz?VAOC)~?2 zFUtzoWR+KVwJ&SDChNS;9(aC-ZvfxuXq#{=o4hGoY-O9bc)Kqu5?i$v*E31INPBmln6=fDhP|9#3uqZBOKo58KoXuT@CB&^RzSFjKK?+vt=yw(Oo# z6Go-F?L%s!Axd)2IKLFHd+ZySgw)ukH`Td@w^Bf;fJ~nhhA$H6@Jh8jqkE+$=S~r3U2BF#^uncMY+7U_6r6*uRuIs;D=p%meNO z^xGmsfxE>d%_OA{uN(qr(${9r}TQil4H@6fjihur_ zeBIdD`11(#+pF^rl)2%>#px%i)qh)WsWhRZRCPeHoVF-ZM;DQpj&*UYDdv;-@v;T+ zOE0M%eFOUp_FFG#3Ko9IanPf!@KviL#1TXi#l&hVnsuAvuUirmGqI7x#h=(^(MleF z!1GZ{Eh?$U@7RUXNx_;6RKXfGNP`=)z;$Wz0yq0oaw&_v$f5LHFEijvz?VAOC)~?2 zFUtzoWR+KVwJ&SDChNS;9(aC-ZvfxuXq#{=o4hGoY-O9bc)Kqu5?i$v*E31INPBmln6=fDhP|9#3uqZBOKo58KoXuT@CB&^RzSFjKK?+vt=yw(Oo# z6Go-F?L%s!Axd)2IKLFHd+ZySgw)ukH`Td@w^Bf;fJ~nhhA$H6@Jh8jqkE+$=S~r3U2BF#^uncMY+7U_6r6*uRuIs;D=p%meNO z^xGmsfxE>d%_OA{uN^PJiy&vTWxiP}nTB(50@27f$J zG;7m&`6}t0^^eaEkNW-2pmDaBfwFwzv*K%Fb40xO3JCrqyV^$oe4 z{LgWl%WjgT$YUre)$wyuP z=3+s_4+n*s>1(l%#eO_+nw%BiMe^Z*rrj^C?n@pf4^|+k9&6}2`5!mL#v8U?ap1qp zE%cfrZ#nkge!VSS! z(ZFhp*RaOxSV#D`nGL}=G94Fq%$wNcEm+>h7PecwgB{+*E=(GG@SdQ1UEarjovQAc za>dlOPua)^(_;%;mp9=67QrK`icv*oyGd0Uz2XQVq6?1o0pg0hIhSCIs%4bqU&%=- zCqb^u36i45zy!G-*rJY+1}qG0Px1$KN;Lvd)6~SMrjhr7Zkkwl qRIJM#ZC^B5q&wOJ(PYi;Xid>%5$|XZMUz!^L;u$(ipZX~LG&9Lub9IC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm b/wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8cbfc9164fde85de16d6486c37039baf2bb0c428 GIT binary patch literal 980 zcmY+C&r%aX5XO7{?CvD9A&W)`i1IZA2p}o~o6?IJ4|xDzfKXPn2p~u-{~fYc>CuBP z;0t*1=+%QS;1l>HR@sYHYEIqr&2ReanQ1y0ohTwwtFEt$g8HT?3RU!p`bt(LsTq&Q ze=<=tYcqKIA|0HL4o~+FMx(*`bD~m;PX;HW!E;ik;}ZJse-Tr@4Ka%>$ei`OZ?FFn!J_VC$iC{dH+kRT30Y#UbG&Xm;VNtSW)H8a_+rgW)uMlB^aiPlb7PH*M6wjfFxgO7Bp0DC6YJ#U1xRk|0t{WxZ z;A^f>$r_CBc_+Ej_h$#>-gdmf$OBVWr2bSmiaWp(41uz}tei zR0>uepB+uCCE?iCi zo-44WYZVo_D|sp9<&Yn8inR0?o2bxZTlyGjz{0>DN&TornMMTan5G2PF_{G2F;0rc zlE%4~9@^S+@_^VOf$JDTv~HZ3R^T3TRl2CwC`-JY@$%kQ98x)(4!MR}Y46{ugvz1t zwf%CW@%Z5I7~4eU$V_NEqRBu_XnUf`xJ_ss(PSVew7a6o$oi@OJxUXq_dbYz11El( Ae*gdg literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm b/wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b1d3d08c7ac95e92eb8417bfbeaf6def9fa17b98 GIT binary patch literal 1032 zcmZuw&2AGx4EFr&?(BM!o#v-SoIIsM1*sfBN`MQQ9{LDelL!JLNlBYj&`OXE5=W4D z0gi|>Z_r2KQSdaCTBPhA?D_nS{f#ZdaB(aEKpf-)SyeDlRaJ><05A}I646)7R}qcaey-I7wJnKAO_gG49dLMA_A3>_8v*ByVkh9L_7mwb~XCJ{N!;_Qg1+MtR7xHZgk{z~`6OOksKeqMrCq4GL>S!thyAAC;3L!X6D-jJcprDR;@ zbCQ&EOG$D=eL;ms%Dg2cd*o|W^L46I>ROaI<4Y!&9cd!jct_4}k@gMRqQ;SLQq#An zMas2UOq;3gvEQccJt*;&z^GDkKyg4#ye7TJ@AV03N}fZ>h9_f4A3(`Mh0iFZ?9?0C zBU9tCvr-+a7L-%r067)%B^i8WjF0e7O^k2&kljRlac8vpyYuvK0hqhC0}y6{I|EP2WudEn|`u&1R<49crWq- z(B-y3SJ)gKT7%Bo3|-Bp=;}5>S6YqES%q%PN^}h?&^3`&apRrlH`G~Oeaw9?;|uYb lf;dR5_2b&mo8h}DJ%+1cW2?X3p?=(_y_kok_7+& literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm b/wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f9984c5e0eb95aa019ef98f1f61c8c2b9de1ec82 GIT binary patch literal 6978 zcmeI1*H;|b5r=Pe&kQqE0fhkN&?BLoK?0N+<(zW@Bq0fq1QH;D1PsbK=diZdYkQr8 z)=3WM?1LZt;AfxXN5A<`a9-E#p1$;;k&f199{gbTZ1w!Udv8_UJGbvtw^Uv0aZpM@ zeQ~XoOsZNtnM^{mR;gMLWhHyG>DH!8BWV)TqfNIqUA1;kkMzmZ;`&SXV8t!F{={jj zZ*Fa9uBmHntv}VKltz)`^~YQ5+Z5QphBshYHs$3Pko@Jje_S}Ah`F$^(E4BgQy2W?P@?wM{R9u zK2@)ZV%m@Qxj3ft_db`z^aQ-m19MIPDmBQRfZH&$LJiI}!>iN~H$%T^XrC%CQ^Ue_ zEiK17)vqA;w=>>ANU@C-0Ld{b!A+x8LRDClP>z~l(F98+avBpICr1msRIO=+)hpLU za=lfJmcksjr+1xbd)G-RJ~^eQD34D~U8jMkr>CwnQha9WT9)GFsq3tizu9t)NjwKC z%%@6;;jt>i<`_0tJbJD3#FzJJzF`XtTPR~oz)B{1dqZ(qf;i|XTvXuEFTSud(0^y7 z|LRYRwBKa2t%&bg`dlaRH{dn`;K{W}AV#`DWn%)bq%||M3p~ z_jmBW_2(sC{<0!L?HWUk zy_6+i?rzGGFLys>$(KH!>@4}xM_RUg>0>ZkzVy-g;l5VAcYnzp_`$37eot}_X33M> zg<0|>_hFVioy(f1vsv@hnKe%xU&2#{dT3AqzE#Z#%g}Rh#>z?PTjPBetcHYTta65k z*SD(&p&5G*H9Wm05}v_J9}U(ZeLmdEP&S!Y84i1g?>?ShZ}su?dP{hQT>5A*mp&S- zhx%x+9umq@(|c8-qc|)Rae=!OLEz>Y1a5*Ukgt76r52QuQcy}RK`BY3WLo@4|M&*@ z@eT0f8{k%=;?w}Q1PubW_6!2I=uCmY9JB{ldUG(+n}dP{dH`2>p%e44WANb$D0e*Y~{P+g=>u-R+{s#E# zZ-Br48U*HGq&Ej6y*U`^&A~`-{f+e2-$-x$jr7)E%e48&(i71#tvxrrUCXp~^nt&A z8U$u$q&G9u-90sALs0+m8U)50>5Vtt{qcF}-L*{1FF(Cq%e3|aANcue5QuN27vFUE z<8%M<8U)50>5Vtt{qcqU#~a}9KLh;zr$HcskzNENy}e_kw|BHmoBseG`13cwk8gk< zUxPq=Bfa=Wdhw0);%oUDa&*COCqq4!{2$8r0QvFfN`8|6{JYzq{P7Qe`s^=K|0h&D zoVX`AlK89CfAZ+ak+?h#I8pbhV4^$~#GF_>*9pbZ$#rm3oE(bhIeAWm-+(-KM&kL> zJ6~RmIF`JTi5EBpahBeN4m*XL;scxk@gk?lv8A^>R}@R%;>LK1Q=*?x4+82mEorc& z!ETc0kx;3eX!0Zya>8>}fn4P6OVkNXRRxkFNP-b3=VUx;RXfo<{puv1l`cv?GgO zrNV8O1&Mqbk9jez>i_@u->rZX%l`-zSav8J$%)2tQNJqIFNljv1`ZlLWazNrBSwyL z;-klujvY6C!o*3Fr%atTea6hP@>#PhDy!zqoi~5M!bR1I#Y>hhTfSoDs?}@Ou3Nuh zh4MQ z!g;s=7vU0IhAVItuEBM<0XN|m+=e@F7w*A*cmNOK5j=(`@D!fGb9ezS;g!6-j=YwRA+Mt*_i#GaW|WLiNa7 z=@9ZZI*7cT4j}KKI^>;Hi@b|!kayF5?*UCfz7I4W`2o;4(BL4&^2l+Kn1o<4axuj literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/nop.0.wasm b/wasm-spec-tests/generated-tests/wasms/nop.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d688d4ab438affe481d9353f06620871e2df1077 GIT binary patch literal 9903 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 KY_`70^ZpNi8~D=z literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/return.0.wasm b/wasm-spec-tests/generated-tests/wasms/return.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..035d7753f0f31fea74cb6ef70ecf4b31a82eabfe GIT binary patch literal 6724 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 X>KBucOyXe0rMgHialEF-b)NS>7`9`W literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/stack.0.wasm b/wasm-spec-tests/generated-tests/wasms/stack.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..be366de067134b3d2700f6274e07f70869e6730b GIT binary patch literal 1056 zcmdT@y>1gh5T2Rcy*qo)`10>0%}j9N6cGX>N20;!ih{<7KDL4*C60*`M-U3`Tp-a< zAl`sy;04l9^9D%isi~R0pzsWwbT@PJeY-Q?><*0PQv?8P$3rSh7@D#yu^a*nQU9>O zVrYt@xOGX$j9!!qf zaSgtN{QEx>KaY~5(c#|sYIXsx7To#e=x_p2-m>Gro&h-iJJ!>_84(N^@Z7P}(8LAr0VrL7#&6O#eOq25YvYf=YY$T5X*`&Vme#6O~MD$iH2K znEqn1`1$e6uOBxcw!bMZ|El3A|E%AbUFIZV;$+{nn08G|YFv{#Tk%|HKaiADX>fz% z%quyPdrH2yZ?Ztnq{&Uml)S_lFAZdwmt}=lII75rtSWhR-)MqelgJvc$-0s^c%3%} z(&CnE@+O+*_ULh4?JCvxF8rL)Mx|P>O{v=2WISS*ni&f{07GT-1o#_6q4H>ax2rbbo z6vR3vm7$wP>PB7C8aiYp?t^wO4&4KGL8Eq$lNVCgD(Vf$>R#7)_L@c6pIl8 zN;M2{n5f}IA*A#0bUzaD<)TwdwG})Ue7&#=_MM?bI5e>QjRE>MGkwK=mC}>+u0890 z|8Vi{H5CO@*c09n>F8-Uzsv0RfPeQX*@E2ZnoXpZ<=~!!^V+e~3vZkmqfpK`RD3Kz z6&C`k;w-=?LX%QyXC_Mf^b$UEsmm&s<@cRnEPt{ql literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/start.3.wasm b/wasm-spec-tests/generated-tests/wasms/start.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..efb0a148633e9274b8bfb93bfbcc939ded77e642 GIT binary patch literal 733 zcmYjPOKuZE5UuLZOwaT<)A`tOK1fx;NMVr$LfBF^xLNoBTp+fh0ol&S!4ZOuCkvJ= zH~epRnN4U^?L0sua8V^!BM)^%NDJq8$~oIp&yTCK#o zJ1ADVx_Dbum&@tp$z-{#-dqDTuH?KrUsl(EI?t5SNt!6I#^M4It&txl9bIF*xdmTC z{Q4i#w${^&Q?UBA#3y#LSe(6w++mvk(wTvveIK!Y2rb=ajQ2#|3#RM%wepRnN4U^?L0sua8V^!BM)^%NDJq8$~oIp&yTCK#o zJ1ADVx_Dbum&@tp$z-{#-dqDTuH?KrUsl(EI?t5SNt!6I#^M4It&txl9bIF*xdmTC z{Q4i#w${^&Q?UBA#3y#LSe(6w++mvk(wTvveIK!Y2rb=ajQ2#|3#RM%w z_ue<7(O}tc2>@LcjYtU%r<5o)Ktp32hT$)bVt}}2ZgmFZW3ex2lDG4WSMU*ZP z-DZY}N=zd>7Gk;(h-MvMo@QCT-Hx^rr_7to_ggDq4I+IyVINo}8aQ7G9DR_Uz1#%l z)f|q!@~HVDgKBmeqUItZ=p1z=q*n_egSkT}yzxcN`HL{|6Q}a2GB1_uV7;B=%-WLj I&`RflADgx~CjbBd literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/start.6.wasm b/wasm-spec-tests/generated-tests/wasms/start.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..036d3748b935d32e6a816b4ca4deaddf7e86ba47 GIT binary patch literal 344 zcmYL@Jx;?w5QX3D?2qG(#8!xMHv}marCq{u5uCz8Nl0Si2tngbK}o?uC^!N~V+{q> z_ue<7(O}tc2>@LcjYtU%r<5o)Ktp32hT$)bVt}}2ZgmFZW3ex2lDG4WSMU*ZP z-DZY}N=zd>7Gk;(h-MvMo@QCT-Hx^rr_7to_ggDq4WjsT!alG{G;qEWIQk$xd$|e9 zt2rEd?DmVkqNON*`-5fhGeAXk2DpsP+QW5Izq6-9T*w-8T<@>8t%mO z-FtWU9yXyT0CbymB1Uu^W2D#t9bMEkO-MrAGyB8a+#kdCxZZ@|Pa|-#vflT>kDww9 z{%Q1KRKsa|7@=56Ay`U90}&}EP=Lbba503@^Cw`@6)~?R9-owykeE z;D~~q-?hF26M4qDP|t@;sn~%rrUU~E-iU#@``^$5+^ zCp{0WU?tqC^M6FEPV#S*n0#g|5s!n5@U>WozV_C4bLf&YxT1E zHHgW*Pn&$=Y08o=bU}+ zd+Th|($^`*7|DdqUZG%`{X(H2g=S-#g(Go&$xFW3u;b_R`B9pup5MB9Al=&4x2mhD zrLV8Gx8E2i#XDO&`&#>r_+iTP{A5Wo<(WhflWq}-`C=qK&M$~vzuSZbWB)w-?~s@h z3;Oyy`%Nrp9qjHkalfT^rAfq>clEAr?KR0*OLuq28WX1eHYOFA$PY6jg~`T7?URf( z882-OOpTYW@r+Hh*}aUN9N6c*Sy;fPaKa0|Cu<;iHA6C z*3B8ZY0?sA*M{ZcG~*R)il0NS^QQzK9!!VzVS37ZZqS5nBY)*#+IY;b%$U$h_?OZN z6ANBmzVjpbTp`GN|L4=l^HgIuiV6&*T|Ic!#vT|p>RZvk?qe@z|7kRClbW!@9476d zq?Xu(rtAwGhBmEf8`o01oue{aq2)HFk=@ME82b;SN7z8e+PgWdum_TQr1f>2-N4~d z*3(M+_cx6mZU4yUG4`)U$6KRS_Hzy=xPzUT9nfR#UJj96tC~&dB)f~F$?o{7vvEDn zKF#5j?2sOx^|i)sswzu9ecrhAWdc0gy@ zuQ{CUz8`b!L3T5CKcDsPtvA>`?9R12`J88m^kln(y;E#nPqh!RcbYBee7ljoMpQ*H zweVp1trK`Pd};87|YyF-Nb!<+viJ zSK>;&3Rht+%@NH_G&g0uL1!M+W;AOH8uV(k;Od+%$8x;}*Px!}Qkq+7Zq0c8&fKpn zutHa&POrsET$|HXSfy=fLx$!Q&FwU|XS{A_?$!=;XeYO^8l703(=K#rH@Y#K=21M$+y+y!y3&C3jw~F$OvrQ#fL-2M7-cE3V0~hEWf;&XNFF0QLO=7&0 z;9Y{dMDG@`O(A$3!FwEd55YzUHtI$Jf6G4*RO`J0#(N2F5^NIvp@3~N!AS(~bKrdh z8ywi6_Y3Y9{gFWR0RiI!1RoSUDEeao8wegtaI*t96RdS$t!@!)5q(H7Q6CmCK1}ct z!6TwS5wJ}lSQRC7s{^-6#+&Zm)pUJS@Tlld1>^NG0pnwm)5ismi~dZ&b_~IQ;5G+t zBUt0W8r?3~F8XspT6YK-cMyC+@Pz0u1Z+nWtR(oP1D_;V?Z9e%O7N8E(}J=3jDYbO zg3k(`75$}v?I?od2tMb)=Lo`q(B}oui@qQ@QePA>zDRJVV5jIy0=5c*V+p?Oz?TVD zIj~A!5xgS$s^AEHO~CjX!Cit~qOS|s#t@7MzTv<(2v$0i@qr+*I@zUFu}J3 zZ;9>^u$2)kCHS@j-zHe$zzTgw@Q&!a?r`1{Fuq6deZl*pzY?&81XBd}I&d$+$bpf5 zAoxJ^*MbuLP{8;h!F_^#qQ4QaB?%@7?swpRf@ue)^&`PYqQ4cy^&?heJS`-^nifPk5cYl`pR)%Nt+%N9F%Ha z&dViqx0Yuk_4z-)T>}Kw2E3>cAU4mGGmI=0%rND=xI`0(BhjNtuMx>oV~v&|aGOY> zgonXPG}4ez*rsWu-5Pm6#@jS->-ZL2z(>%|`D4{4@(_cm_bVCrGl&?xdOyiY}YTR!{BgQCb7F zZ$@czsqu;p%bHv{_wAl*De@LB7F{O1sEb9H3h(k_(dEMXzF2h0up}rJT{bKmiba+^O}_mUZpnJvN~Aw@z8_99chfXnkSjwjmF_me~rqwYUl;muFB~o1;9P I)t&+V0J&jmIsgCw literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/traps.1.wasm b/wasm-spec-tests/generated-tests/wasms/traps.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4f38b52b24c43760ebafaf82e654be41fc0e5559 GIT binary patch literal 589 zcmZvX&u-H|5XR?^*LJ+?cqOC?^)y?0NH0AAa*o7#hxVF8;6q!|gt|p=@fO6918)J3 z!ISVTj7vi$%C5BEx4-=~GYhM3jR1g0`I2IUCC3;sE&-OPH|l#u{czsB4tEN~?d5yd zZo0G0V%2r+)iuC?(sjG;+G{{A9TBH#mXR)#7~CSFVFXO~IAU}A6KsU$+k<2$#$Rq0 zZ(g^@XD^-~U$yH+2anJVq<>TO%llOJFS>!;thU>?AE7LMkxRg{tr6ohX#B+iG*FXk zKwv^{LeOOA&4+gf3ct(-TGOrSE7h+vOJH+lf}8z&v)!3bJM($pK0%5N1}z)U3pE8I!;yjGz910mpaT=_Qz6VD$u_e&#&lWdM0Exl+kz?x%N7h@1);p`! bODTP#vy8RN_&iin9YSSof%Yx15SrLz=2HFbsG%h`qBK6Q#$&qX&Zk)L$RS8lP(w3${Ahp>XI3mQq z;7j7;A8_Q#|3Sc{i&|C5sl=<*ljp79d-BY}?x2qVfa|3;lw=is^T91ivmTf2in=lBF*QcC)r{-ARLs1_H9l(lI(dFkIuw80}pGztNe zC6!|~{thmO?CmAkpIBNtIBY%M>ul_AZEl<#4-fWQPqsE&12D6RAtW=1`nH^~vxy<3 z7esygipQn-6=DeG87Iy?+-zb9-s~P7J$(s_Yf$j0OGZyOa8E6KvNPCjbZ!N`Y3s-_zgPFA6IEtOb3wjR1hHPU{WIxfA7 zo|^0`K+UTU`)UeEN}I%j3l(o&sQSc(nl~;4uU)v|l?yjLxp2#)3ky!%D_jX$vQ{NU TwHs?(o6NH-qx^tQ2L|{HI%wVP literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/traps.3.wasm b/wasm-spec-tests/generated-tests/wasms/traps.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..77c08e851580c5b751b7f0cb46db406f6b277a05 GIT binary patch literal 1125 zcmZ{i%W~5&6o!u^%eN!jY6_(kC{pPnv`SQPn(D}aUNj`C5FUjboSQOfw*qHD`>IGGSaI3qyZEmo3j{tK{#?AyQM{iI29 zIqsjl&0D9PcI#q1JORFGIfrS#0QUxW3SPtNePvqx>*f@K)jjFa-+RK{REbN0r3yF0)yoVpJZN@|82z OOmSvRPH|{dVSyi)mP0ZC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm b/wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5b6a13fc0be490f42c6724e5e9954b16739935cd GIT binary patch literal 3496 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 F{{i)`R*C=s literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/address/address.4.wasm b/wasm-spec-tests/generator/altered-wasms/address/address.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..18bf2ff4ad8991da3dabf7d72d78c22e0a56a30d GIT binary patch literal 1821 zcmai!O;8*~6vtn8@666_FYG`PLde&9ut}B>5*C(S21wWjl0ZI54pwgLYS09N5J_2D zMKP(;Di3<_=+%?u)r;16Fwv{tyyv7|wMso%g|BC4GhR{-RrK_~e{cT%df#hk?Q9AF z5M{3^!w{M(3_}q%0h)qmA{4t#wYRsIys{=qsE4tKj35>u`PsflmOxOsZf}w&p?M@KKTCSkX_Dtwd(3yTU+-l;B;Qc z!R@?Gz)PSCUPqmToXcUax9&sUX>D&mdLR7!kGWz7e5GqbghOEbjX^L_lLZ3^Wmzao zFxhqU-s3?QKWtdFCZF;+$KxjrEkS2l8&Sy!ol&%PA(Qo9tz&L~|2uy``|M_Z+gHSz zpBpIZE-OGh%_lR_nSJBVIDESHgvFlRmGLNEG0I&&Gv;2kp6dU{W%xV@%%G(U3~AtL!j^DF;!gE+`}4{`8Npc*!~K_x6jbP7*dqtoUWjyQv-@eCUc za=X^-a71VEtYt^c-^`xF5j+>OSsG<_G*Dxf9i#JjKB5bF!LnoKqvt>s z9K%Y?dNj`Lc%b<6!>UXZI1y15tCpQKpD|m*Nvy?ej_S4w0t_rWZN6l7 z2B&d`GqlAyi?f{JMUJ=_sD2yKPnYmgL~}T2BO2ygjxg9j!(X4}4Ck4h50r0NpB8W- zqD5S^>}B&4vsdskUWwT(U1j!apghZZw1i6$E#tCfubCIjUdL;AJ!U<+!R(Ddfn|Yi z;?0O|;VpDpbQ^Ee3a%jEB(_xVFnDL3?&94N6!jZI+ai|6C&deD!&YsHdyX8;pfe3c z9z;!gm>Gp4xkhjuyO@1Uo@}7k1qLXGnX>fS73_oNPiYR)>s-bK>+!KrDwKPUHBtuI zL1AWt4V)7A5*>s(pPhrE&d1`QtaHYW&Dfn+ZMWCBUED7y*S3_6_8;cDGaw{iEWR!% z?H3AC`&|X0{cg?M%46Qou$|^_rkl}!$s%uB55#TvpMQUbBA)%jH!1g^?pf_zp!jC% z;Ula7*nUg(@wPtBI`>wpPqg(3*13;Tz1r5RtaGEJ`ea+5WS!d~)hlhi#yXdNswcj6 z*1616J@K7lol82^6W@S!E??c-$t&@#jPU|jX}XXYS8T>ylIcR?T(K#0{iO?ub;ah) Mw_m!Dcvq_MFL)qY*8l(j literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/address/notes.md b/wasm-spec-tests/generator/altered-wasms/address/notes.md new file mode 100644 index 0000000000..80eda63685 --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/address/notes.md @@ -0,0 +1,9 @@ +## Changes +- address.0: + - Change large offset to 33MB - 1 (instead of 4GB - 1) +- address.2: + - Change large offset to 33MB - 1 (instead of 4GB - 1) +- address.3: + - Change large offset to 33MB - 1 (instead of 4GB - 1) +- address.4: + - Change large offset to 33MB - 1 (instead of 4GB - 1) diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.0.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8b843b39c054a69db1082f10ab63691eafaef2f3 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@cD-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&VaxvBb literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.1.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d4268ee32702c151b6b467f5b4b50bd29b4eb943 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@lG-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&V>oL~= literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.10.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.10.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f0e6f61bcbdb82977790205b3347fb0b5a1b0e52 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{fFlHrHw7gHSK$U6jY&oI z=D(TwSPfeOKv%BgoY6_nnQ{kobV}nmLIX#Z{`qa%?}o?S{c0Hc*8^};Zrg8%{s0nZ znZ+7oX-`B}2;|NsQ#$^_XQc0c6ce(m{r>3#uKFQsP>XMf@-BPQs)%T2<*$wT?dcInKPVNSEH!0r&&aqcPzC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.11.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.11.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d6d950da81a5a79f7f6028482b2f9f89f43e314a GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{gbUauSuTQ8Scrs>fFlHrHw7gHSK$U6jY&oI z=D(TwSPfeOKv%BgoY6_nnQ{kobV}nmLIX#Z{`qa%?}o?S{c0Hc*8^};Zrg8%{s0nZ znZ+7oX-`B}2;|NsQ#$^_XQc0c6ce(m{r>3#uKFQsP>XMf@-BPQs)%T2<*$wT?dcInKPVNSEH!0r&&VZ!y*Y literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.12.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.12.wasm new file mode 100644 index 0000000000000000000000000000000000000000..557a7bb92c36af2766182e0bfb95eb0d8bdc20f0 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{L>#~_$#M~#!a^j31RNn~yeTLtxC%GmXiO@q zH~-Dd$7U9gG89by@ZP`0A2aS|rA(W*+1s&(|i&vE8`MY{B+4!|GGa52^Z literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.13.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.13.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4ea76e7e39f1119048ffe6a504a2fdcce6c0d223 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{M54D#vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{bDVi!kuJTd1MmmUVKLYM literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.14.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.14.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9a59426e7aeb2ae7ca8f6271769847189fe24b95 GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$J?NvRouiVIdMi0*(+g-V~G+oP`r`G$s|* zoBw9!V?FE$0A0I|b4DjQXUZMW(K(Id2n`%r`scT4zaJj=tMxGSuSejl+^*jZ{ShS2 zGK)3F(t(Jq5XfChrgZv+&q&|@C`z*H!{O-zuKFQsP>XMf@(ohGogty&X+pq)rwc|Z zHtGFkrt))nwhf<@cgnA&XZTVd65Rs+L2RZ`v?odm(F6%*8*Q+2)EsO;D_06?rB-k& ulZ5DWbPbze7i?m2k2ncMn6#p`u?%Hxw5rmhY7>3%b6j{|kuJTd1Mmk93Nj7= literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.15.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.15.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9e3687e68ff5cd9e6e9d7c79e1436e65b2a840db GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$I|&vRouiVIdMi0*(+g-V~G+oP`r`G$s|* zoBw9!V?FE$0A0I|b4DjQXUZMW(K(Id2n`%r`scT4zaJj=tMxGSuSejl+^*jZ{ShS2 zGK)3F(t(Jq5XfChrgZv+&q&|@C`z*H!{O-zuKFQsP>XMf@(ohGogty&X+pq)rwc|Z zHtGFkrt))nwhf<@cgnA&XZTVd65SH~gV;=?XitJx;?w5QX2&?5<;PBwQgHq}`ArC$LMhTm-wY5D6gxM+h2k3Q7vj!U;GUlZxtl zKQj;gxFY~`?K;jGo#dP;cR)vHH%$}NaAX;t-{!-9eB9sn<2bw?fpg?`!)_doAaRyi ztTC1jL}Z0P?ou+P(=U8R`u;~zlI;(Nrw_R5hpa&@z9GstNcDDsgoft{0V|%b7^&E# z_m_o+pX+nl@JV^A{91d4FZCf&qv}Cyrb%=sN(#{g31%B@uuIe&Y(Ohl3TmZRa4WNf s=v2CfO|UCAvA9E=g(A#a(b-srvNk$Z=~133;+NC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.17.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.17.wasm new file mode 100644 index 0000000000000000000000000000000000000000..de1526f98657c906a17ebf1709e2f4d6fe5bfb73 GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$JkNvbhLOVIdMi0*(+g-V~G+oP`r`G$s|* zoBw9!V?FE$0A0I|b4DjQXUZMW(K(Id2n`%r`scT4zaJj=_v>NkUys09xm~{-`Xfl3 zWfp6Ur2`RJA&|S2OzHFspOL=*QIurYhr`ncT=hfNpcdZ{QG72+fmVbY4$#xj(((W*+1s!jC4&vD^>MY{B+4!|D|bTSbD literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.18.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.18.wasm new file mode 100644 index 0000000000000000000000000000000000000000..21ba9392a0505adbfcb51681f343844773028f82 GIT binary patch literal 322 zcmYL>F;2rk5JmsY?5<;PBwQgHq}`ArC$K9-HW$GuEJQ*`z!8GRn}U*pvv2~A#-yTp z^WV&TtcM)|pljE0&gdlPOt}L(I;U|Qp@Aby|NJ)X_rv4k&9Bx9fL9e*}rM z%wmnPbRZ%t1ag;>DV=`dGt&1zijwU5aCrKFtA5BD)Z!bWe1lYPXGmyxnh>zy>4K4p zO?rQssr+1?ZNn$!o$_nx8NSqq72Oj2gV;=?Xit3%b6j{|kuJTd1MmkBV=@x} literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.19.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.19.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9dee1345bddebbebd69bc925e02ccea6d06967e3 GIT binary patch literal 322 zcmYL>Jx;?w5QX2&?5<;PBwQgHq}`ArC$Kxn<{~(Sg-8eqI6}~PQ&3WH7EZv?m{e5X z`dKmiGBXEw~uHOy)5hTts zi#5j5frzXS$X!aNbozzQNZHTG<;pg(4HhfavDZiGU;Y)p3(XFZnv6)8EohT_p6C{{zw873%bFcxeTq&rPTEVSM t5~5S-8aBZ$*u-LmI0;3Vw4$@I3}tO}s?wus6MgV=TzFrRmfq9>_yZAAG8F&- literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.2.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6e6e1f94c7969874ce8e4b2e7e788a609c22a6b5 GIT binary patch literal 288 zcmYL>u};G<6h-fQ&vrr`2~P+iA=#xvC&px?Uib}?Ap24ffzF-z7(h5#&O_c5s-EN79nyUzpHCJm!EVl9U zZJFiw=4@*|WN XDz}TQift%;xx%Hj3(AjHIS>2+I0G&v literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.20.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.20.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5b889d09162297a5ecfcc618c41a964f1a1835bb GIT binary patch literal 322 zcmYL>Jx;?w5QX2&?5<;PBwR%_NV_3LPT-Vea}n&qLL`I)93g1DDJUs83n$=cOe(5x z-p@RA!=3=pjcYk)w32hC+yX6K)Hse%!I7nZew+4(;qh?a4MYEW0xp)@_xqtgfy7y6 zvBp?B5|I@GxtU~2=U@1Y^!<;bB-!zS1zn^k-(o(gJKKKQ$yst<@Z|VU20SF;2rk5JmsY?5-29C0rpIq}`ArC$Q}14owr`K{`A!{hFLH4Odh0XQkQ?YBdJ0Ex5A zVvVu1Cn75Za_5pM9e?37()T}#DcRM2|MUS@{*X1O#WzIx3aQ@AkkD|I5U}8C!AQkA zy}!&+wNfj% vl}SQ$I=Y5UunRV^xJ8_VB1~G*<~R-0+Gtg&N98*D;O98=z9e0GQwQJ=;WaYU literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.22.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.22.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8f44ef1053159eb8af4807ae269c9242319d3668 GIT binary patch literal 329 zcmYL^F-`+P3`M`~ncZY35>p`>q?wQ+C)gELGKhPyDOQMtkibR=nw=Ds6kLanBXIbC@dE{m3PMk_gI$}P~+Ne#mQ6&zW*r`Jih>mPP^tG@4E4#3GOw%xYx z4j?Hkvshy+?TN?=fr@jF;2rk5JmsY?5-VeBwQhcgtQw{q@%M-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{APgV;=?Xibz9q6rerCfZ=bDVi!kuJTd1MmmVRWaHC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.4.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c490ef29d9a102130d2e415b7b4fa8b2cb9f824d GIT binary patch literal 321 zcmYL>Jx;?w5QX2&?5-VeBwQhcgtQw{tX0$kHFb-yM8zHN02zn zEY=uH2O_dUAa^O5(&-mIBYpp)n2=o`4o@F&)el*NT6{y4Z;|Tl3<(WS69N`IT`*Fy zN$)Q+H9wbUx8alWPWiR;3}5Pl)~@}7*i577Oq3L&2@=dU+F<9XIoN9M5 tgy{5i4Vz#WY+`YbScW2$t>|i;gh_35s?t)mi9Yx_F1)WuLvQK;`~k~;G1LG6 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.5.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a640e38865c21a7e76abe8b729b2702daaeca9db GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@=P-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&XRx#QD literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.6.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cf71f9ef39d2113a7af4cd8b07dfb8d9fa9a5b25 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q@}S-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{BPQs)%T2<*$wT?dcInKPVNSEH!0r&&X&oSEo literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.7.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.7.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5abc4e41bd1e673ff314c5d3477627a6fbcec448 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q^7V-vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{APgV;=?Xibz9q6rerCfZ=bDVi!kuJTd1MmmWz%ktb literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.8.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.8.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e70f7a7db194382c3527e7324c4f8bd46b912c43 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{q(`z#vRnkGun-9$0Y?ZLZwg8ZuEGsC8k36Z z&3`lVu^P4nfUaD}Iir)DGvyBG=#<8Bga(c*{qx(j-wltu`_(Y?uLt0y+_v8i{Q)G- zGK)3F(w>N{5XhZNrgZ#;&q&|@C?;fA`~A}gT=hfNpcdZ{APgV;=?Xibz9q6rerCfZ=bDVi!kuJTd1MmmXIWgV< literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.9.wasm b/wasm-spec-tests/generator/altered-wasms/align/align.9.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fecab967171100a62ebbe7a384b936447cd6b444 GIT binary patch literal 321 zcmYL>F;2rk5JmsY?5-VeBwQhcgtQw{U9gG89by@ZP`0A2aS|rA(W*+1s&(|i&vE8`MY{B+4!|GLDly;y literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/align/notes.md b/wasm-spec-tests/generator/altered-wasms/align/notes.md new file mode 100644 index 0000000000..824a547058 --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/align/notes.md @@ -0,0 +1,4 @@ +## Changes +- align.*: + - Change to start with one page of memory + - This is necessary because of the data section added by our test harness setup. diff --git a/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm b/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a0c3621b51c869da3480020dd98f12fdf3d88baf GIT binary patch literal 329 zcmYL?u~Ne@5JdNMk{w%_!4*S!3MpJs+9eS`f>U^yBqTAhhk?dQK}o@9@ELp>G8C!a z?%v%V*8QFU&?0SA2xvHjK%oH|n%p>!|B6PaJLdNAI&Y8t=J>eo`}Q;dQj>DIr!EMoYvn$k+0BkvU^yBqTAhhk?dQK}o@9@ELp>G8C!a z?%v%V*8QFU&?0SA2xvHjK%oH|n%p>!|B6PaJLdNAI&Y8t=J>eo`}Q;dQj>DIr!EMoYvn$k+0BkvU^yBqTAhhk?dQK}o@9@ELp>G8C!a z?%v%V*8QFU&?0SA2xvHjK%oH|n%p>!|B6PaJLdNAI&Y8t=J>eo`}Q;dQj>DIr!EMoYvn$k+0BkvL2XwS{%d&tS%kcbG4#)ZNc;CMIrl$|+;)j$%C8i+?H}KVA1CNGF4~v@1n&H#Ee}CCT z`MFzd!{^A`$giDYm + +extern "C" { + void _type_i32() { + return; + } + + void _type_i64() { + return; + } + + void _type_f32() { + return; + } + + void _type_f64() { + return; + } + + int32_t _type_i32_value() { + return 0; + } + + int64_t _type_i64_value() { + return 0; + } + + float _type_f32_value() { + return 0.0f; + } + + double _type_f64_value() { + return 0.0f; + } + + int32_t _empty(int32_t) { + return 0; + } + + int32_t _empty_value(int32_t) { + return 0; + } + + int32_t _singleton(int32_t) { + return 0; + } + + int32_t _singleton_value(int32_t) { + return 0; + } + + int32_t _multiple(int32_t) { + return 0; + } + + int32_t _multiple_value(int32_t) { + return 0; + } + + int32_t _large(int32_t) { + return 0; + } + + void _as_block_first() { + return; + } + + void _as_block_mid() { + return; + } + + void _as_block_last() { + return; + } + + int32_t _as_block_value() { + return 0; + } + + int32_t _as_loop_first() { + return 0; + } + + int32_t _as_loop_mid() { + return 0; + } + + int32_t _as_loop_last() { + return 0; + } + + int32_t _as_br_value() { + return 0; + } + + void _as_br_if_cond() { + return; + } + + int32_t _as_br_if_value() { + return 0; + } + + int32_t _as_br_if_value_cond() { + return 0; + } + + void _as_br_table_index() { + return; + } + + int32_t _as_br_table_value() { + return 0; + } + + int32_t _as_br_table_value_index() { + return 0; + } + + int64_t _as_return_value() { + return 0; + } + + int32_t _as_if_cond() { + return 0; + } + + int32_t _as_if_then(int32_t, int32_t) { + return 0; + } + + int32_t _as_if_else(int32_t, int32_t) { + return 0; + } + + int32_t _as_select_first(int32_t, int32_t) { + return 0; + } + + int32_t _as_select_second(int32_t, int32_t) { + return 0; + } + + int32_t _as_select_cond() { + return 0; + } + + int32_t _as_call_first() { + return 0; + } + + int32_t _as_call_mid() { + return 0; + } + + int32_t _as_call_last() { + return 0; + } + + int32_t _as_call_indirect_first() { + return 0; + } + + int32_t _as_call_indirect_mid() { + return 0; + } + + int32_t _as_call_indirect_last() { + return 0; + } + + int32_t _as_call_indirect_func() { + return 0; + } + + int32_t _as_local_set_value() { + return 0; + } + + int32_t _as_local_tee_value() { + return 0; + } + + int32_t _as_global_set_value() { + return 0; + } + + float _as_load_address() { + return 0.0f; + } + + int64_t _as_loadN_address() { + return 0; + } + + int32_t _as_store_address() { + return 0; + } + + int32_t _as_store_value() { + return 0; + } + + int32_t _as_storeN_address() { + return 0; + } + + int32_t _as_storeN_value() { + return 0; + } + + float _as_unary_operand() { + return 0.0f; + } + + int32_t _as_binary_left() { + return 0; + } + + int64_t _as_binary_right() { + return 0; + } + + int32_t _as_test_operand() { + return 0; + } + + int32_t _as_compare_left() { + return 0; + } + + int32_t _as_compare_right() { + return 0; + } + + int32_t _as_convert_operand() { + return 0; + } + + int32_t _as_memory_grow_size() { + return 0; + } + + int32_t _nested_block_value(int32_t) { + return 0; + } + + int32_t _nested_br_value(int32_t) { + return 0; + } + + int32_t _nested_br_if_value(int32_t) { + return 0; + } + + int32_t _nested_br_if_value_cond(int32_t) { + return 0; + } + + int32_t _nested_br_table_value(int32_t) { + return 0; + } + + int32_t _nested_br_table_value_index(int32_t) { + return 0; + } + + int32_t _nested_br_table_loop_block(int32_t) { + return 0; + } + + void sub_apply_0() { + _type_i32(); + + _type_i64(); + + _type_f32(); + + _type_f64(); + + int32_t x5 = _type_i32_value(); + eosio::check(x5 == (int32_t)1, "_type_i32_value fail 5"); + + int64_t x6 = _type_i64_value(); + eosio::check(x6 == (int64_t)2, "_type_i64_value fail 6"); + + float x7 = _type_f32_value(); + eosio::check(*(uint32_t*)&x7 == (float)1077936128, "_type_f32_value fail 7"); + + double x8 = _type_f64_value(); + eosio::check(*(uint64_t*)&x8 == (double)4616189618054758400, "_type_f64_value fail 8"); + + int32_t x9 = _empty((int32_t)0); + eosio::check(x9 == (int32_t)22, "_empty fail 9"); + + int32_t x10 = _empty((int32_t)1); + eosio::check(x10 == (int32_t)22, "_empty fail 10"); + + int32_t x11 = _empty((int32_t)11); + eosio::check(x11 == (int32_t)22, "_empty fail 11"); + + int32_t x12 = _empty((int32_t)4294967295); + eosio::check(x12 == (int32_t)22, "_empty fail 12"); + + int32_t x13 = _empty((int32_t)4294967196); + eosio::check(x13 == (int32_t)22, "_empty fail 13"); + + int32_t x14 = _empty((int32_t)4294967295); + eosio::check(x14 == (int32_t)22, "_empty fail 14"); + + int32_t x15 = _empty_value((int32_t)0); + eosio::check(x15 == (int32_t)33, "_empty_value fail 15"); + + int32_t x16 = _empty_value((int32_t)1); + eosio::check(x16 == (int32_t)33, "_empty_value fail 16"); + + int32_t x17 = _empty_value((int32_t)11); + eosio::check(x17 == (int32_t)33, "_empty_value fail 17"); + + int32_t x18 = _empty_value((int32_t)4294967295); + eosio::check(x18 == (int32_t)33, "_empty_value fail 18"); + + int32_t x19 = _empty_value((int32_t)4294967196); + eosio::check(x19 == (int32_t)33, "_empty_value fail 19"); + + int32_t x20 = _empty_value((int32_t)4294967295); + eosio::check(x20 == (int32_t)33, "_empty_value fail 20"); + + int32_t x21 = _singleton((int32_t)0); + eosio::check(x21 == (int32_t)22, "_singleton fail 21"); + + int32_t x22 = _singleton((int32_t)1); + eosio::check(x22 == (int32_t)20, "_singleton fail 22"); + + int32_t x23 = _singleton((int32_t)11); + eosio::check(x23 == (int32_t)20, "_singleton fail 23"); + + int32_t x24 = _singleton((int32_t)4294967295); + eosio::check(x24 == (int32_t)20, "_singleton fail 24"); + + int32_t x25 = _singleton((int32_t)4294967196); + eosio::check(x25 == (int32_t)20, "_singleton fail 25"); + + int32_t x26 = _singleton((int32_t)4294967295); + eosio::check(x26 == (int32_t)20, "_singleton fail 26"); + + int32_t x27 = _singleton_value((int32_t)0); + eosio::check(x27 == (int32_t)32, "_singleton_value fail 27"); + + int32_t x28 = _singleton_value((int32_t)1); + eosio::check(x28 == (int32_t)33, "_singleton_value fail 28"); + + int32_t x29 = _singleton_value((int32_t)11); + eosio::check(x29 == (int32_t)33, "_singleton_value fail 29"); + + int32_t x30 = _singleton_value((int32_t)4294967295); + eosio::check(x30 == (int32_t)33, "_singleton_value fail 30"); + + int32_t x31 = _singleton_value((int32_t)4294967196); + eosio::check(x31 == (int32_t)33, "_singleton_value fail 31"); + + int32_t x32 = _singleton_value((int32_t)4294967295); + eosio::check(x32 == (int32_t)33, "_singleton_value fail 32"); + + int32_t x33 = _multiple((int32_t)0); + eosio::check(x33 == (int32_t)103, "_multiple fail 33"); + + int32_t x34 = _multiple((int32_t)1); + eosio::check(x34 == (int32_t)102, "_multiple fail 34"); + + int32_t x35 = _multiple((int32_t)2); + eosio::check(x35 == (int32_t)101, "_multiple fail 35"); + + int32_t x36 = _multiple((int32_t)3); + eosio::check(x36 == (int32_t)100, "_multiple fail 36"); + + int32_t x37 = _multiple((int32_t)4); + eosio::check(x37 == (int32_t)104, "_multiple fail 37"); + + int32_t x38 = _multiple((int32_t)5); + eosio::check(x38 == (int32_t)104, "_multiple fail 38"); + + int32_t x39 = _multiple((int32_t)6); + eosio::check(x39 == (int32_t)104, "_multiple fail 39"); + + int32_t x40 = _multiple((int32_t)10); + eosio::check(x40 == (int32_t)104, "_multiple fail 40"); + + int32_t x41 = _multiple((int32_t)4294967295); + eosio::check(x41 == (int32_t)104, "_multiple fail 41"); + + int32_t x42 = _multiple((int32_t)4294967295); + eosio::check(x42 == (int32_t)104, "_multiple fail 42"); + + int32_t x43 = _multiple_value((int32_t)0); + eosio::check(x43 == (int32_t)213, "_multiple_value fail 43"); + + int32_t x44 = _multiple_value((int32_t)1); + eosio::check(x44 == (int32_t)212, "_multiple_value fail 44"); + + int32_t x45 = _multiple_value((int32_t)2); + eosio::check(x45 == (int32_t)211, "_multiple_value fail 45"); + + int32_t x46 = _multiple_value((int32_t)3); + eosio::check(x46 == (int32_t)210, "_multiple_value fail 46"); + + int32_t x47 = _multiple_value((int32_t)4); + eosio::check(x47 == (int32_t)214, "_multiple_value fail 47"); + + int32_t x48 = _multiple_value((int32_t)5); + eosio::check(x48 == (int32_t)214, "_multiple_value fail 48"); + + int32_t x49 = _multiple_value((int32_t)6); + eosio::check(x49 == (int32_t)214, "_multiple_value fail 49"); + + int32_t x50 = _multiple_value((int32_t)10); + eosio::check(x50 == (int32_t)214, "_multiple_value fail 50"); + + int32_t x51 = _multiple_value((int32_t)4294967295); + eosio::check(x51 == (int32_t)214, "_multiple_value fail 51"); + + int32_t x52 = _multiple_value((int32_t)4294967295); + eosio::check(x52 == (int32_t)214, "_multiple_value fail 52"); + + int32_t x53 = _large((int32_t)0); + eosio::check(x53 == (int32_t)0, "_large fail 53"); + + int32_t x54 = _large((int32_t)1); + eosio::check(x54 == (int32_t)1, "_large fail 54"); + + int32_t x55 = _large((int32_t)100); + eosio::check(x55 == (int32_t)0, "_large fail 55"); + + int32_t x56 = _large((int32_t)101); + eosio::check(x56 == (int32_t)1, "_large fail 56"); + + int32_t x57 = _large((int32_t)1000); + eosio::check(x57 == (int32_t)0, "_large fail 57"); + + int32_t x58 = _large((int32_t)1001); + eosio::check(x58 == (int32_t)1, "_large fail 58"); + + int32_t x59 = _large((int32_t)4096); + eosio::check(x59 == (int32_t)0, "_large fail 59"); + + int32_t x60 = _large((int32_t)4097); + eosio::check(x60 == (int32_t)1, "_large fail 60"); + + _as_block_first(); + + _as_block_mid(); + + _as_block_last(); + + int32_t x64 = _as_block_value(); + eosio::check(x64 == (int32_t)2, "_as_block_value fail 64"); + + int32_t x65 = _as_loop_first(); + eosio::check(x65 == (int32_t)3, "_as_loop_first fail 65"); + + int32_t x66 = _as_loop_mid(); + eosio::check(x66 == (int32_t)4, "_as_loop_mid fail 66"); + + int32_t x67 = _as_loop_last(); + eosio::check(x67 == (int32_t)5, "_as_loop_last fail 67"); + + int32_t x68 = _as_br_value(); + eosio::check(x68 == (int32_t)9, "_as_br_value fail 68"); + + _as_br_if_cond(); + + int32_t x70 = _as_br_if_value(); + eosio::check(x70 == (int32_t)8, "_as_br_if_value fail 70"); + + int32_t x71 = _as_br_if_value_cond(); + eosio::check(x71 == (int32_t)9, "_as_br_if_value_cond fail 71"); + + _as_br_table_index(); + + int32_t x73 = _as_br_table_value(); + eosio::check(x73 == (int32_t)10, "_as_br_table_value fail 73"); + + int32_t x74 = _as_br_table_value_index(); + eosio::check(x74 == (int32_t)11, "_as_br_table_value_index fail 74"); + + int64_t x75 = _as_return_value(); + eosio::check(x75 == (int64_t)7, "_as_return_value fail 75"); + + int32_t x76 = _as_if_cond(); + eosio::check(x76 == (int32_t)2, "_as_if_cond fail 76"); + + int32_t x77 = _as_if_then((int32_t) 1, (int32_t)6); + eosio::check(x77 == (int32_t)3, "_as_if_then fail 77"); + + int32_t x78 = _as_if_then((int32_t) 0, (int32_t)6); + eosio::check(x78 == (int32_t)6, "_as_if_then fail 78"); + + int32_t x79 = _as_if_else((int32_t) 0, (int32_t)6); + eosio::check(x79 == (int32_t)4, "_as_if_else fail 79"); + + int32_t x80 = _as_if_else((int32_t) 1, (int32_t)6); + eosio::check(x80 == (int32_t)6, "_as_if_else fail 80"); + + int32_t x81 = _as_select_first((int32_t) 0, (int32_t)6); + eosio::check(x81 == (int32_t)5, "_as_select_first fail 81"); + + int32_t x82 = _as_select_first((int32_t) 1, (int32_t)6); + eosio::check(x82 == (int32_t)5, "_as_select_first fail 82"); + + int32_t x83 = _as_select_second((int32_t) 0, (int32_t)6); + eosio::check(x83 == (int32_t)6, "_as_select_second fail 83"); + + int32_t x84 = _as_select_second((int32_t) 1, (int32_t)6); + eosio::check(x84 == (int32_t)6, "_as_select_second fail 84"); + + int32_t x85 = _as_select_cond(); + eosio::check(x85 == (int32_t)7, "_as_select_cond fail 85"); + + int32_t x86 = _as_call_first(); + eosio::check(x86 == (int32_t)12, "_as_call_first fail 86"); + + int32_t x87 = _as_call_mid(); + eosio::check(x87 == (int32_t)13, "_as_call_mid fail 87"); + + int32_t x88 = _as_call_last(); + eosio::check(x88 == (int32_t)14, "_as_call_last fail 88"); + + int32_t x89 = _as_call_indirect_first(); + eosio::check(x89 == (int32_t)20, "_as_call_indirect_first fail 89"); + + int32_t x90 = _as_call_indirect_mid(); + eosio::check(x90 == (int32_t)21, "_as_call_indirect_mid fail 90"); + + int32_t x91 = _as_call_indirect_last(); + eosio::check(x91 == (int32_t)22, "_as_call_indirect_last fail 91"); + + int32_t x92 = _as_call_indirect_func(); + eosio::check(x92 == (int32_t)23, "_as_call_indirect_func fail 92"); + + int32_t x93 = _as_local_set_value(); + eosio::check(x93 == (int32_t)17, "_as_local_set_value fail 93"); + + int32_t x94 = _as_local_tee_value(); + eosio::check(x94 == (int32_t)1, "_as_local_tee_value fail 94"); + + int32_t x95 = _as_global_set_value(); + eosio::check(x95 == (int32_t)1, "_as_global_set_value fail 95"); + + float x96 = _as_load_address(); + eosio::check(*(uint32_t*)&x96 == (float)1071225242, "_as_load_address fail 96"); + + int64_t x97 = _as_loadN_address(); + eosio::check(x97 == (int64_t)30, "_as_loadN_address fail 97"); + + int32_t x98 = _as_store_address(); + eosio::check(x98 == (int32_t)30, "_as_store_address fail 98"); + + int32_t x99 = _as_store_value(); + eosio::check(x99 == (int32_t)31, "_as_store_value fail 99"); + + int32_t x100 = _as_storeN_address(); + eosio::check(x100 == (int32_t)32, "_as_storeN_address fail 100"); + + } + void sub_apply_1() { + int32_t x101 = _as_storeN_value(); + eosio::check(x101 == (int32_t)33, "_as_storeN_value fail 101"); + + float x102 = _as_unary_operand(); + eosio::check(*(uint32_t*)&x102 == (float)1079613850, "_as_unary_operand fail 102"); + + int32_t x103 = _as_binary_left(); + eosio::check(x103 == (int32_t)3, "_as_binary_left fail 103"); + + int64_t x104 = _as_binary_right(); + eosio::check(x104 == (int64_t)45, "_as_binary_right fail 104"); + + int32_t x105 = _as_test_operand(); + eosio::check(x105 == (int32_t)44, "_as_test_operand fail 105"); + + int32_t x106 = _as_compare_left(); + eosio::check(x106 == (int32_t)43, "_as_compare_left fail 106"); + + int32_t x107 = _as_compare_right(); + eosio::check(x107 == (int32_t)42, "_as_compare_right fail 107"); + + int32_t x108 = _as_convert_operand(); + eosio::check(x108 == (int32_t)41, "_as_convert_operand fail 108"); + + int32_t x109 = _as_memory_grow_size(); + eosio::check(x109 == (int32_t)40, "_as_memory_grow_size fail 109"); + + int32_t x110 = _nested_block_value((int32_t)0); + eosio::check(x110 == (int32_t)19, "_nested_block_value fail 110"); + + int32_t x111 = _nested_block_value((int32_t)1); + eosio::check(x111 == (int32_t)17, "_nested_block_value fail 111"); + + int32_t x112 = _nested_block_value((int32_t)2); + eosio::check(x112 == (int32_t)16, "_nested_block_value fail 112"); + + int32_t x113 = _nested_block_value((int32_t)10); + eosio::check(x113 == (int32_t)16, "_nested_block_value fail 113"); + + int32_t x114 = _nested_block_value((int32_t)4294967295); + eosio::check(x114 == (int32_t)16, "_nested_block_value fail 114"); + + int32_t x115 = _nested_block_value((int32_t)100000); + eosio::check(x115 == (int32_t)16, "_nested_block_value fail 115"); + + int32_t x116 = _nested_br_value((int32_t)0); + eosio::check(x116 == (int32_t)8, "_nested_br_value fail 116"); + + int32_t x117 = _nested_br_value((int32_t)1); + eosio::check(x117 == (int32_t)9, "_nested_br_value fail 117"); + + int32_t x118 = _nested_br_value((int32_t)2); + eosio::check(x118 == (int32_t)17, "_nested_br_value fail 118"); + + int32_t x119 = _nested_br_value((int32_t)11); + eosio::check(x119 == (int32_t)17, "_nested_br_value fail 119"); + + int32_t x120 = _nested_br_value((int32_t)4294967292); + eosio::check(x120 == (int32_t)17, "_nested_br_value fail 120"); + + int32_t x121 = _nested_br_value((int32_t)10213210); + eosio::check(x121 == (int32_t)17, "_nested_br_value fail 121"); + + int32_t x122 = _nested_br_if_value((int32_t)0); + eosio::check(x122 == (int32_t)17, "_nested_br_if_value fail 122"); + + int32_t x123 = _nested_br_if_value((int32_t)1); + eosio::check(x123 == (int32_t)9, "_nested_br_if_value fail 123"); + + int32_t x124 = _nested_br_if_value((int32_t)2); + eosio::check(x124 == (int32_t)8, "_nested_br_if_value fail 124"); + + int32_t x125 = _nested_br_if_value((int32_t)9); + eosio::check(x125 == (int32_t)8, "_nested_br_if_value fail 125"); + + int32_t x126 = _nested_br_if_value((int32_t)4294967287); + eosio::check(x126 == (int32_t)8, "_nested_br_if_value fail 126"); + + int32_t x127 = _nested_br_if_value((int32_t)999999); + eosio::check(x127 == (int32_t)8, "_nested_br_if_value fail 127"); + + int32_t x128 = _nested_br_if_value_cond((int32_t)0); + eosio::check(x128 == (int32_t)9, "_nested_br_if_value_cond fail 128"); + + int32_t x129 = _nested_br_if_value_cond((int32_t)1); + eosio::check(x129 == (int32_t)8, "_nested_br_if_value_cond fail 129"); + + int32_t x130 = _nested_br_if_value_cond((int32_t)2); + eosio::check(x130 == (int32_t)9, "_nested_br_if_value_cond fail 130"); + + int32_t x131 = _nested_br_if_value_cond((int32_t)3); + eosio::check(x131 == (int32_t)9, "_nested_br_if_value_cond fail 131"); + + int32_t x132 = _nested_br_if_value_cond((int32_t)4293967296); + eosio::check(x132 == (int32_t)9, "_nested_br_if_value_cond fail 132"); + + int32_t x133 = _nested_br_if_value_cond((int32_t)9423975); + eosio::check(x133 == (int32_t)9, "_nested_br_if_value_cond fail 133"); + + int32_t x134 = _nested_br_table_value((int32_t)0); + eosio::check(x134 == (int32_t)17, "_nested_br_table_value fail 134"); + + int32_t x135 = _nested_br_table_value((int32_t)1); + eosio::check(x135 == (int32_t)9, "_nested_br_table_value fail 135"); + + int32_t x136 = _nested_br_table_value((int32_t)2); + eosio::check(x136 == (int32_t)8, "_nested_br_table_value fail 136"); + + int32_t x137 = _nested_br_table_value((int32_t)9); + eosio::check(x137 == (int32_t)8, "_nested_br_table_value fail 137"); + + int32_t x138 = _nested_br_table_value((int32_t)4294967287); + eosio::check(x138 == (int32_t)8, "_nested_br_table_value fail 138"); + + int32_t x139 = _nested_br_table_value((int32_t)999999); + eosio::check(x139 == (int32_t)8, "_nested_br_table_value fail 139"); + + int32_t x140 = _nested_br_table_value_index((int32_t)0); + eosio::check(x140 == (int32_t)9, "_nested_br_table_value_index fail 140"); + + int32_t x141 = _nested_br_table_value_index((int32_t)1); + eosio::check(x141 == (int32_t)8, "_nested_br_table_value_index fail 141"); + + int32_t x142 = _nested_br_table_value_index((int32_t)2); + eosio::check(x142 == (int32_t)9, "_nested_br_table_value_index fail 142"); + + int32_t x143 = _nested_br_table_value_index((int32_t)3); + eosio::check(x143 == (int32_t)9, "_nested_br_table_value_index fail 143"); + + int32_t x144 = _nested_br_table_value_index((int32_t)4293967296); + eosio::check(x144 == (int32_t)9, "_nested_br_table_value_index fail 144"); + + int32_t x145 = _nested_br_table_value_index((int32_t)9423975); + eosio::check(x145 == (int32_t)9, "_nested_br_table_value_index fail 145"); + + int32_t x146 = _nested_br_table_loop_block((int32_t)1); + eosio::check(x146 == (int32_t)3, "_nested_br_table_loop_block fail 146"); + + } + void apply(uint64_t, uint64_t, uint64_t test_to_run) { + volatile uint64_t* r = (uint64_t*)0; + *r = 0; + switch(test_to_run) { + case 0: + sub_apply_0(); + break; + case 1: + sub_apply_1(); + break; + } + } +} diff --git a/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm b/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6a1c495e9f3c20c12247187aed992e90d444b619 GIT binary patch literal 23439 zcmeI4d3Y5?y2iVz6B2TgoWqV$;rjqJC{Y4<0YDoc+6fIoz^pc7YRA;qHUuU-lFjm8xuu$Z(oNHhj+^=p|`-koiS z<~N)+zP4;s|9(N6cr!g9$cr{dA~!$YL~h&SCT-ctHFYP|1_g0OdO)0!h%&&%8HI61 zMp2YoJ7#>tX+d$quVY!VZT+aR$JNy~j2j!Il9}zev|av~lj<5qjjyW>+7~x%#$_FH z>uM$(R~vLJuBk5@RyS_=31uTkO{i}OIu&Lz#*7*fbS}#5*43c6OS3+@maY`kjT<*U z=C?^S?GrEI(R`_=w`Jk532_~^^T(c0J!)jx@Nr{D1l#*#`~B$H-8y(V1wJE^b#E8t zHq;EO!yOnqqW084Hpq);?UJpF4iKq(BvCS|EJ$l7E4ae7x4R(lk zYU}E2gB=Oh*VfezZ-_5SAUWM#1khM12?{zvn|# z);Zp-MqNiuXg<@f9XBZ;zFVhFvi))TZkj*xq_M+;^7hcIo2adqQ{Z6F=M5Y&yU8BtaNOabw2UpiZ9Jmq%{OiLgqB0k`aAJZdteV;Jzn88_jyU5}eE?v%3n zQK#1igWHeA;cG|4zn!SELy}FIO-+1gMwZpA_v@08ZPc`@IyIL>%{w~q{@ZRgKW_X7 zlx$q;e{ud-9UPcjGk$#CX~7|F^Gx7^gxR^^p=sveoFEk@(#ACQG%j^Q50s>Bp$jA^ zwS}cNaCxKMsVDY8=9Eh2rtKuG_r-cfWx@tbMS(?DG5!o3Uy{h$JAH$_85``)!(MS< z8=Z+szdLcTjdo8@B-#b`%ppNg86SE^BGD;;sjAAb^xM(UmdKI!8adztPjCb9Wi4rG?M7dX!@Jvo55TPB;sY)| zDf(2((6^H3F>>XpKN?1X?4|8iCdbv__yc z0<95fjX-MzS|iXJfz}ALMxZqUtr7VD9Rb&fHw^fefl2bE2EOrN1HAf>n@FUvo660~ z;7brDljC2WXym?)HGEAXY;+;tt}w=#M4~!lJj zGx2W8#KC!9nv9RmYYKv#Mi-!>i6~RJ&#Mbet}qktiZn7)46l(_jSBOfl19h41%U)& zwvBQmK#h6QOpXiiUP_+NgC-|%jffY}LZ5}GhN+zyLSz|N6lG>-Sy${csbWoB$4G-P zyRcmXRq?raAtiIb>|EnI$H&|-*San~-{-bB=1d&9ozGELF@Y?;)Pnnqi;1$(QkpV) zMH;?VGjHyz`+CvNczuU&&`ccM&F}XOuwOzZ+K*qi*{*U>=xKk;t?TZ^6cKVx9Wjz47J^@=z6?`6xEzAi(=PzHYur0xB3CSEOKYnHQYtZ+@feDZBd%Ak%G&5Q;6)*EZf7q&CI)-^y+v^=F7Iv60YBMqo_Bg^9#ny}A@Mnu&M?_srbJaH7Q;%>`}9oM9%~ zGiF<49_2IHuyQ7L#v5U1M6*IQf}h3-YQ^?4?!gxV4V`F?yB1ryuDiBzQ?Zrjx@o@q z{P{rJ4(_G}ZZ))b@k7z16ic#7Q*PGM zK-)=5+NBOkCA2-H?JL4bkoLw>I}EnkQ94M+!?lxJ1ZijKB%L8G)Gm;A8EAh-6-%+y zuF~}`-DXHIY0{xuBHKvG(YmdB7|3?At!xLRNVf;F{h;tmAic5FZqn^R?H)C(oRvdV zq`OFss#^`Lhp6;O9pnP-DLqrg+6!>6v|aDdx8CXwuCwkaJIIbzx|3TEpj38}($qnc zgt#}vz0>w%FaFr-&ayLwySN`A>?6BK9~?QMWl{$5t`P5lBH;VhZX^#e4 zE`6mO;zsQ!{UGiSasRY^$BW;wIzR?cyt|tNaawklG{o~8wL&VO9ticow0*;?->^DJ z22s6-TLkrRbIHt zs&lG?#mV3*9pavVc&H4Kp*{>r-4EjZ(srd6ue4evRTS>;UW4!e*i$({_m$F0p!?97o~t z?q>)`$?-A@!U`O5G=!tmcCi;Owt9k`Kw+Jm`FNmXq)x`fM;r^`*tEUT3vaYKPR3C< z-dzjfi85YJgs^9-olbyoLfS6$!i84rooIv9OGA~OnRYQlC}%H zc!AYZ{6-k#mfk zOQ0Ws^9Y;=V3r4FS)FPG3BWYt?gVhYk!eQGC(tw1UZ)e74q%1{W>}qJ@OG$PU}T1o z3rv+>Xxy{lW*WKB$V_rcaI?tG0youjQ>|WP@M@`EY~&&%7lXURxHrMgHgbuP+2EYj zOO0G=Kwn1sGSE{zJ;mzf25+b893z(-nFD&RabJL*XJoFCd89+V!pIe*=aZffdXlFn zS-sNW1y{Yw$dyK}0)4e{lb;B5fsw0?EFhhu*BH5m^tGg~1^qKN@VGU4ox!WHy3ojV zMizp;-ndIZ-(ci=BR7!F)kQ`Yk-m}ijiA5x^!G+@GJ-_zX5+30cZ-pmjod=6jV?B_ znB1-8ZUy&^=e{v|n-L^(w;OjKxFtqzH?o9Wf!<-{4sv&ryA#}(p8L}1T}F_|-EG{{ z;O;SUw~>3mp$W9tdr902V!bEU8@c)>x@2P+-jpsjXYvxDY!?C`wiS-)5g7Q z^cf>h8+iucv&P*HaD|a)jjSMuw$eeLBlsM^wH{n+^m*f6GWvp%=Z(AoaHVli0esQO zN+T~4L^J82FA;nR;3^NIk}n&##wd1QHnIxfYUADpxW>q8BWnnvg>=wY2)+UkheP{X zX%weMBJ!$n-vN2e$g4(PBZ9`!L0>2GIuO(z$O@ylOe7+28aMN)K;JU*rjfUZpj~v( zw~4$Bgpn!5QV~)lBJUcv2*`Uz-Zkk00qquoUBt9_i5fC35`M}7B zO~gkeJ_3Q;3Sy~IG!P^bpBVQFh)<1tV&qd2JyRX^-z5GG0*wX4Lq^dE*PH$HGyI$( z|J=xDMn0!J3HcY4e*rmKBjooRMJq=_Z|W=Keg*Kgk*|z=P2eg6;y)z*0|G4`#N9@} zG4c&g@L%IDSRUxNM*eH$Tk7Xf{~h(;LBGW7ml*xt2olclgK_gg{AlC{BR_(0ALr>$ zMt&mqGr6C^E%w}EqrVvW1?TzIxLZK|X5?2RzmfVRPbXQKWI;{F^GGIJ{2lVtjYiM1 zf`qf3ZQX<5@VqD_6+C9Ak(w-e zzLoPyO(!)S)B;Z}Fp6h563%vkb!)+0XypPc7lKQ5N_9?kNp;nkgk}Po@1gld@s|SW zQry#vtosPm#a1q|axtlG^b+bXfqstH&oPQWMMzgbf2no9L4O%&Jk6;u(aWj79QxT_ zKieq&)*)R3{aouVdm7JlD|4;Pqkdbxg8D0+SXqFR*ebo&x<>(BhiAN%>j-V1>ZbgAFAIT9_1ILS*ISpb zH(0se$_>C4S+@olIuMKSd?(gjZz6OPpeY`jV)SM!NIcCg)_o2=dM3A6Sxmj8RBt75 zD~L&+n1rXi6{I_GHMd(g{TV#vt=w*935gzh2laPAe+FCg8G0w4^;XKN^e*defEZn= zyR6(zaZkO6;(KgGIG%m}@p`WvoTvBUS#RY&d$`_j-BUmwu!7#&14Mf1gG3(0@#}c} zI{l{=B;Me zk9#XmXDYU%K11XgAjc3nMxV8U#IvlhZV8a*tgOJZK693x^m!uB138k&k@|uaBsQ&; z)-40_qLr0aUd)_jCw+;?OF)hwa)iEY1&PQi>)r&i+R7>`t21XQ)ip%c06C1vVfqRl z|53%(TK6rGSFNnI@@nQRrTQ9?*MJ;M$An#du*UEcDcG35Vybok3k)gWIxK-S~=Ze=}@GX0FmXFxFI zDz$s*=Wven3oD=FsSe~z{6>I$W#vmNUlG|=zb5iE5De!^?Lhqx9_N-_^>3`3@?4<* zwepRX|5Ci0eoOJU5D%bufPQCPC;c7|bSvNE_&->;5Xg^Kez5W*k-qv9k)MF{CDK=a z#$()aZ1W2)8RB29{9@%-ip%vkihqN+55;|SQs}zqXI~1h0z$$b;vH7S~Ax~7OSB7$Bs8@xOuUChH_0_oc1)(em^_ozS@_-H0Yl&S8 zET34uUKh%Bp)L%ijb0xL*4G2OA(R_JT@(sZF0es*Be5HS%tBX?UkT5k{K_OKU>=iw$n8_2qpvMfA7b0nvi5ja1RBe{D7 zNv!Z!K3{Umf+VaUqj}Os@=nxz{0#Do0tY`xa#;5QX)6UOm{TcD07{J3LMh}q=5J&f&yn}cN`#!f}<>$L$4r+iJi71&ClZtdJ+Y_)ffOxasIxEa{)=uUyXwEh*? zOKt_0UEE?UySf=zZiA*;;yzsyz)f0?<#z4{EVp-4u*4&WBOcH0*@TI$}yPH%UH?(CLfYZv%Ieca91Ds!{2 z+|_;iQlPuJSF!Ai0G7K27qroS?jh{=haEJ)U5%~XG3-gZv#?d+K6o+Efo?gLgIouA zJU3%&PgkmYxeKthx9bf%=j)ZQbKK5a>DFS)xm|Rydl*|oTpu0k7Gi6^!DU+IrekY= z_a#ie1BUd!3zph}sXgGzSouR%KlLD|kvUVPhqyJ+9x8{(p=geK>K`HfS1!& zUGQWMmjjQc6{CNG0|WCXwHLe?D@SDYP5&%^h6j_Qe}ND4mnt|gN5XkIO7@3%Z+I?N z{#p^TtJoV$Jz9>2^-=}Pak>Vh(RP+p_E~`5@M#kt^sf2?vR>r|W zk@4_PPNZj+a!u|@rY~48^>9!2(UYV>PO5@;axy%VQ)F+52g5C~a%xsb@H9CMrpaC~ zOHP-6RM8{RGhvO;wriIf0-MCj#H@Z`qckeIQG4iQ?~zQ#pJ2EnXBmYlf;0$NE-?1Z zV2NaP2+yG#CR*}d@*cNgJyTxn=~l*94B010jf9>Yc! zn8@vrz5v^$hBkX1xF@CdR5%{+I_P*LVRm4g52FJQVwxS1(ILA5%mv8S>FtgNf(?<` z0i#3mGByVu#q>Dna3Jjpum~Wm4Lpl+mFTRN+VSu>U~VWzVI{OSux6L|P6KNrHZ;lr z_5sL&9sG<;mlf{DJ%*-634IK#?*n*04Gh{CNV@>s8DPf6h&!&{!+?JQu*tosqH*ys z%?jESy#ba2T*@;p#Tn!7>!b86=vd^flfnDfSmxoMer?vap(4J1J^;{A^5I09Nq;8r{O(Ag8``rzzzV{5nKl_?&5wx zZ-EX&QsFCL{Sm;A=_kNTpoyRW+oh^#DWJy*Fz)TbQ~0;{5%S<7z)XOHP(>r*b3^|C zNdV>o{F3080OLOISM(0(AS7uUVErF}-_S0ATR@wjJHR4<-xB;5U?uNkB~63xyit$` zlYnl)4*-9pNf7x1(hXn^z@G`yC5ZdKztAIqMS%PGTWkl#n0N~?d zzqX$8;;$n=Y6(gonyzXZd68UPmoyqLp&4*8L`0hkLAV|@K#c9LvK-VSbpe2@d{dRy$IBMsJ9jQIQcBun6 zUgwBCZM(9nT`_FOc%7s6JdW0}z6apF9HMiej+6qJ3lKwej?>e&Bf*XwwLf4vTu*Y0 zj`cqQKE%N}hv-Pf0E+--hUe(Om)cY`Jjc)+XM8jsm{;jz9FE7s@Irt&0GIKM%W%fH z3;zTMSoJ$*_cV)Y#A?l%43@^<0WIhbh8|<98;v5E9=MW$E;|gLv`k}R8hG4 zF$S0d-AoDNfH}|2lrR>UuFPvyv?xzdvJxNyrw<86nI$wph+MVQw+ezPjnFUQuZKGfbE~+_ZpE!o1+71q>3V z{5CCMj4+$GX#s{MhY`c zEfq6fm{w}3m{G$t5}qXfqi^w3lEK1U(MGw95oUxo%4KLU>$6cVBZ66-jdB?X%-L*| z%j?IS%tpDqY|OZ9n49L+Vnzj*Q&V5M^;HDdM;AVv08qlL(tB8pxnvvLLEv z^gX=n8#Ryt!OTF521u0fGGadZ#9nmnfs7YS|CR*|6fFMeuEj@a4#q&n33h(e zj`#(>4XVdb!MTr`gD=grqk)VSEc&P&`LgDAG?3An@?4M**4r00eaUZw<1=y#A?voO zEOVkkj3MmzME6Za&1W3MNWyX7oQmK4i^4UC@r22q*pA2YUjRf@8?sx@AVw6{dbR}L z1KdEun8HwxntJqgz)cRrz~V)~=+5%XfYtH00^^!6w0LDOx^e!?fg1^YTYRDE&hmSJ z8wnU=yoeazSue=y01jeo@y23w9nm)iH#|UjUq%*wW!!lDCkL~yv%D{Z3iC7iz4|W@ zR>xl;jIN@*F9QmbG`h^_`-9c|v|v*?qX|1TIz?RWKQ!1RU@YOhMgo4WaN{#DkT7W@ zLHw=44Nk#G!q1H=*(BKD91JDA-{^kD-!|O%G>j&k;;1P`pE|7Orw-9QIz9fOm-l5% zVJzc7(bonyeK42%PA@FzEovB7nAKa*}-WALN{ys7945kf# vpO|+C^Nqhx%zK2{%HJpEox((CVuwwl;k&uMD;)ot2k>?UiJT+Lg5duEA>eCT literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/br_table/notes.md b/wasm-spec-tests/generator/altered-wasms/br_table/notes.md new file mode 100644 index 0000000000..03ca7959fe --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/br_table/notes.md @@ -0,0 +1,4 @@ +## Changes +- br_table.0: + - Change the `br_table` to fit within the acceptable size + - Change the "large" test expected values to match the new `br_table` diff --git a/wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm b/wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f8d0a9762f227bb09c6f62665824c793ba65c66f GIT binary patch literal 825 zcmYLH$!-%t5Ut*3+S5IDXWvm(@F5&P0wf!8A&o>nfFFo0G!eFw*s;xa@#Mgf19$iU z4xBmXAM!&~J1kO5uj|$8S{wSa3jqKkwtBLzp{MG)7IhDxC)fhMie#(BV!`IWlO%tA zNhlT|A1PH`zW3F5HW;7wXR~TL2S`+QQC-ZcIf$h(nGP=J18Az!OQ~|}ye}nW+K7n| z!YBbE+f=oP*Eis5h`;_r-ZpA{S%Fpa4`XPU`P*q#L7~sa@222Pe=<4$1kK``_8NkA z9UDxb%IN?+@t!58BXjZ-h%dNp>i9s1a$@ZJq!b z)M%bVi$SDP^h0QIXM%FfFux)zkI|MqXKJ8MWfs`LB0$RF_>miOhd$+4C{xRYPI**B zPM}baIKF8^P-qakiYrFZRe?cvmF1urU$fMeNnPbHfh^`|y9&@eP?nQ6(7vXEt0+nc z-tilrYA~F^^IJdU;g%`Ad&O(zH8_9DUkT6pgL8Zgkaolr|EoLd2~)g8*F0T*vODrA Kli>6-1o#b=Nq%1d literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md b/wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md new file mode 100644 index 0000000000..96d8826906 --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md @@ -0,0 +1,5 @@ +## Changes +- func_ptrs.0: + - Change to import `printi` from `env` + - Add new type for `param i64` and update import to use it + - Extend i32 to i64 in test to use the print function diff --git a/wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm b/wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f7016cd7ee3c05bfb9302947157e8917bb6aeeae GIT binary patch literal 309 zcmYL?JyOF!3`RdmySC%?46Yc4N*hw-1a?W5i(nTXhJ=uSGYmA|6qFPkgJWjUhu0G@t872)$KeDLYna6t zOGhHICI!weB~m#5!bODdf8-0Y{qgwp0bBl%F{s5gMDYfp-YpT(a223fbG2rKd>h_h zmPvkYX4~*N@iy^m;~4HiY@|ujwwIvZsHoX_t9FH&)hb%KN}yKi1a74W@L5W;hK<@a l8=v377n*C)O8V{>x~NS$Ri>eG>z%q4E}SbVHJzyy_ye5MFvjUhu0G@t872)$KeDLYna6t zOGhHICI!weB~m#5!bODdf8-0Y{qgwp0bBl%F{s5gMDYfp-YpT(a223fbG2rKd>h_h zmPvkYX4~*N@iy^m;~4HiY@|ujwwIvZsHoX_t9FH&)hb%KN}yKi1a74W@L5W;hK<@a l8=v377n*C)O8V{>x~NS$Ri>eG>z%q4E}SbVHJzyy_ye5MFv|am7S!IX*F!m>qSi>yF zSQ?1PW+}|G$u1>Qn1A6S!uLP&f^0VoPam-54;h0>Tul^j5UTwO0W~iJ6dPV{7$M(< z_m@?YpWCyoc}~1d{MtH(dk`CGlC!OkL-4|L^CY>tNP`UF?-5M9pm6V#!R0{k7qi-?J literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp b/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp new file mode 100644 index 0000000000..cfe85784fe --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp @@ -0,0 +1,120 @@ +#include + +extern "C" { + int32_t _size() { + return 0; + } + + void _store_at_zero() { + return; + } + + int32_t _load_at_zero() { + return 0; + } + + void _store_at_page_size() { + return; + } + + int32_t _load_at_page_size() { + return 0; + } + + int32_t _grow(int32_t) { + return 0; + } + + void sub_apply_0() { + _store_at_zero(); + + } + void sub_apply_1() { + _load_at_zero(); + + } + void sub_apply_2() { + _store_at_page_size(); + + } + void sub_apply_3() { + _load_at_page_size(); + + } + void sub_apply_4() { + _store_at_page_size(); + + } + void sub_apply_5() { + _load_at_page_size(); + + } + void sub_apply_6() { + int32_t x1 = _size(); + eosio::check(x1 == (int32_t)1, "_size fail 1"); + + int32_t x2 = _grow((int32_t)1); + eosio::check(x2 == (int32_t)1, "_grow fail 2"); + + int32_t x3 = _size(); + eosio::check(x3 == (int32_t)2, "_size fail 3"); + + int32_t x4 = _load_at_zero(); + eosio::check(x4 == (int32_t)0, "_load_at_zero fail 4"); + + _store_at_zero(); + + int32_t x6 = _load_at_zero(); + eosio::check(x6 == (int32_t)2, "_load_at_zero fail 6"); + + int32_t x7 = _grow((int32_t)4); + eosio::check(x7 == (int32_t)2, "_grow fail 7"); + + int32_t x8 = _size(); + eosio::check(x8 == (int32_t)6, "_size fail 8"); + + int32_t x9 = _load_at_zero(); + eosio::check(x9 == (int32_t)2, "_load_at_zero fail 9"); + + _store_at_zero(); + + int32_t x11 = _load_at_zero(); + eosio::check(x11 == (int32_t)2, "_load_at_zero fail 11"); + + int32_t x12 = _load_at_page_size(); + eosio::check(x12 == (int32_t)0, "_load_at_page_size fail 12"); + + _store_at_page_size(); + + int32_t x14 = _load_at_page_size(); + eosio::check(x14 == (int32_t)3, "_load_at_page_size fail 14"); + + } + void apply(uint64_t, uint64_t, uint64_t test_to_run) { + volatile uint64_t* r = (uint64_t*)0; + *r = 0; + switch(test_to_run) { + case 0: + sub_apply_0(); + break; + case 1: + sub_apply_1(); + break; + case 2: + sub_apply_2(); + break; + case 3: + sub_apply_3(); + break; + case 4: + sub_apply_4(); + break; + case 5: + sub_apply_5(); + break; + case 6: + sub_apply_6(); + break; + } + } +} diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm b/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..68f6944332975cb832d55c0a56845a4f8537a4e5 GIT binary patch literal 1610 zcmaKs%WhOh5QeL}&uym9c#g-$7%=dc8DPxa2F`HDZQyXfgUQYwB@={=W8<-MVc~J4 zEVJMRvWk>Q$pf%8`#eGxiIjC-Ae&T=!3hz{jMQCS^>tU(QB_f^v!IAb9WBr5ZkJ|F zx7$_SS)y4bClXQlvsqnT-8l9vs;gO>_Gh1`?ZwWs#hF&8(_UU7@~UW|z0hf|kTL@` ztxcT7Nh#JFKZ=4-Eh(i!qew+VrmNiAI@vC{U*BwQ@l2dPUu=Cc(^{E%*6pS7Eoqvu2gpq zxom!v9OXK71ZwECp~=N_?#maWqWoskYjeFO`$gHmowS;4iQLy~fq>TbB&YLt+GJCk zIODaE+@B;H$aNc17F9))h1;wCkn|4me-D2I>LZDa$sJ<_f|_RyT_^YE4Y6^C1NVbS zp(BpmE0JQSIdOlj6PMhdvX))M*8MJ0>H@B~UqtG2uVt;epJdJ4ce3_7#WnXzq=Br= zgU}ev^&#knKEzwFg@;h%tr)`Af`>88+prA-Sq-(U#M=elp6iB(8@vNMctqfx7{Shh zcVQRr#%}ayHF+0;BG+|~)|tUPiiG!I6nhG;qt1J=7nz_T?-O)iF1VoJ{n*b9L_CHD z#tJ@w1AGt%Q57^2SOUeNT#tBogb(8|ACY&D;s}lwd<@5U9OLMdcqZMd8kccmXWm3VB0^yI()Nc&<^ z+5}-lHnVADvosBDR!IY!^`*vU)l}OoOO?&~t$3|Sr34aVpLp+^<0`5?1N*&B$v26u z^hOOnZ9RLAaU$PBqVpqWLpLEhX|DIU + +extern "C" { + int32_t _grow(int32_t) { + return 0; + } + + void sub_apply_0() { + int32_t x1 = _grow((int32_t)0); + eosio::check(x1 == (int32_t)1, "_grow fail 1"); + + int32_t x2 = _grow((int32_t)1); + eosio::check(x2 == (int32_t)1, "_grow fail 2"); + + int32_t x3 = _grow((int32_t)0); + eosio::check(x3 == (int32_t)2, "_grow fail 3"); + + int32_t x4 = _grow((int32_t)2); + eosio::check(x4 == (int32_t)2, "_grow fail 4"); + + int32_t x5 = _grow((int32_t)523); + eosio::check(x5 == (int32_t)4, "_grow fail 5"); + + int32_t x6 = _grow((int32_t)1); + eosio::check(x6 == (int32_t)527, "_grow fail 6"); + + int32_t x7 = _grow((int32_t)0); + eosio::check(x7 == (int32_t)528, "_grow fail 7"); + } + void apply(uint64_t, uint64_t, uint64_t test_to_run) { + volatile uint64_t* r = (uint64_t*)0; + *r = 0; + switch(test_to_run) { + case 0: + sub_apply_0(); + break; + } + } +} diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm b/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6e2fc5ad6faeb49d105535852cab374f6149fc25 GIT binary patch literal 1028 zcmY+CNpcfG5Jj_w9;9la1`h~q@K0ODGM=XvHW0X2=m1>6b`XNV10F;$Y}8(`g9yB0 z#|7X3Y*}ytR_wR{mmn)3g3zY3>i4V6tjbS&y(2|Ls+sKSvZP&8mZd6piFTFjR9KsS zzyEisS)1HAOa3CrYWvC{ppLDV0C} zMy@3P`+rDsZJ(YUzoIDGJ2^RgLuvJAlvv7*E0ijy$ma)>4T z81C>0MtBsX$nylLz*hynTIfcA8{9yHuL*n|*KobVV;JLcjH51a$b3WK8-*SY@G#%R zO`brFfeE0)4CYBp;*!8Mfu{tXDs&#;oSSI!w7|D8jawa_!3?+1LME^icvj$9dC~x9 zd>glU4ppAV9OgT`fCXN}A}arSUJ`hz&}o2EUdA%7AmLT4V70?*SmSl9BmUR(hQJ$z zwgI+Wpx`zv-$5I9I=qQZ-oh44o_O$GLGSMKJ=|+j-91(=%u4&5jr=eNY+;)+NRD6; zZBbo<3T@a0s>{3-Cy0@pa;mqH*2E)RfekHIQ9(5)C#jqqa{HVi3pM&CDs|t6Iz}3> zFt7)bKWb905rNvKAwji`j260WQb`)iG7dM2!i|!L#3^K$Z9|A=O)5nzNFQ-kx~SGD zkDZ)x^2$~!WO6p!=Nf9Ey!)t93eIu0o#1&q*?V?~6{6s&0c}+@aod2lCYpG0KwB40 a>^h)rh$fC6& + +extern "C" { + int32_t _grow(int32_t) { + return 0; + } + + void sub_apply_0() { + int32_t x1 = _grow((int32_t)0); + eosio::check(x1 == (int32_t)1, "_grow fail 1"); + + int32_t x2 = _grow((int32_t)1); + eosio::check(x2 == (int32_t)1, "_grow fail 2"); + + int32_t x3 = _grow((int32_t)1); + eosio::check(x3 == (int32_t)2, "_grow fail 3"); + + int32_t x4 = _grow((int32_t)2); + eosio::check(x4 == (int32_t)3, "_grow fail 4"); + + int32_t x5 = _grow((int32_t)6); + eosio::check(x5 == (int32_t)5, "_grow fail 5"); + + int32_t x6 = _grow((int32_t)0); + eosio::check(x6 == (int32_t)11, "_grow fail 6"); + + int32_t x7 = _grow((int32_t)1); + eosio::check(x7 == (int32_t)4294967295, "_grow fail 7"); + + int32_t x8 = _grow((int32_t)65536); + eosio::check(x8 == (int32_t)4294967295, "_grow fail 8"); + + } + void apply(uint64_t, uint64_t, uint64_t test_to_run) { + volatile uint64_t* r = (uint64_t*)0; + *r = 0; + switch(test_to_run) { + case 0: + sub_apply_0(); + break; + } + } +} diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm b/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ced75950562263d56dfc90504340a0f91fa20a69 GIT binary patch literal 1107 zcmY+DOHvd;5QeiJ{g|m9r%}XFQU8Py2Nji958{I)^>#Cw{Q&p9!wu!ctcq;78 za5((C)vQhb*{iI7IM_Yh+8GS`FJ2M_DL&{Q4EirgnKaSb#F`=-sUxLSWMy&jgsGH2 z{z|SQ|NFm5a&4cyIDAb}v~zUy^ev_Jk8xrtH?B~snkJv`Pm!lWXP!VEopm(%WY52O zJ|*J2UQi2tEOt%o`<~O}V$pi!ei~Iu1SStwAgF!T&~5U+z7iW>vGvEtmLvZ|{Mai_ z{CC-<-f_(n*Znu~oR2v3F*p1d@lJTdO|LokpT!&VpJYAhKgfCt^*rKnXp9$n61t-& z`7}=R1QI@j37jdpg%+R1S)9rfBm$ok_*|h|0dDbmoaae_FJKZEO1_ATdKH9On22GQNo$xLNWo+~Rr6!wDP;To8Dn&}o2EUc@3Vp~lNt!g9$4 z3httd^xvIV1YRk$4Y1|gxXr7udRceY+;m&rBntvY} zF_Pz;>K@Vt$y?W8Lp^oWq)KuU%E=+O#~HGaV`!pE4{gX}~oa>mJ@wvr)}v)LXu z&XH}!nX0EXnrUj38cAsLNC^X=Rwji3c=7_c^nl$f-wj`Rg_lUMEnhd~*R){9! TF`{)vlMx!xRzxFb-+<^3@PfFz literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md b/wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md new file mode 100644 index 0000000000..88ec02ae90 --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md @@ -0,0 +1,16 @@ +## Changes +- memory_grow.0: + - Change to start with one page of memory + - This is necessary because the error messages for the `eosio::check` calls get put in the `data` segment so we must have a least one page of memory. + - Adjust memory page counts accordingly in tests + - Change `store_at_zero` and `load_at_zero` to store at 65537 because we start with one page + - Change `load_at_page_size` and `store_at_page_size` to page 2 +- memory_grow.1: + - Change to start with one page of memory + - This is necessary because the error messages for the `eosio::check` calls get put in the `data` segment so we must have a least one page of memory. + - Adjust memory page counts accordingly in tests + - Change maximum num pages to match our 33MB limit (33MB/65536 = 528) +- memory_grow.2: + - Change to start with one page of memory + - This is necessary because the error messages for the `eosio::check` calls get put in the `data` segment so we must have a least one page of memory. + - Adjust memory page counts accordingly in tests diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp b/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp new file mode 100644 index 0000000000..4c6c39b465 --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp @@ -0,0 +1,41 @@ +#include + +extern "C" { + int32_t _size() { + return 0; + } + + void _grow(int32_t) { + return; + } + + void sub_apply_0() { + int32_t x1 = _size(); + eosio::check(x1 == (int32_t)1, "_size fail 1"); + + _grow((int32_t)1); + + int32_t x3 = _size(); + eosio::check(x3 == (int32_t)2, "_size fail 3"); + + _grow((int32_t)4); + + int32_t x5 = _size(); + eosio::check(x5 == (int32_t)6, "_size fail 5"); + + _grow((int32_t)0); + + int32_t x7 = _size(); + eosio::check(x7 == (int32_t)6, "_size fail 7"); + + } + void apply(uint64_t, uint64_t, uint64_t test_to_run) { + volatile uint64_t* r = (uint64_t*)0; + *r = 0; + switch(test_to_run) { + case 0: + sub_apply_0(); + break; + } + } +} diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm b/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7ca5d07c9295fde4d9228cd8d9d3ce3f7c078650 GIT binary patch literal 823 zcmY+CyKYlK5Qb-O=d8WQ@yY$3%s5UI3JQd(qr(${9r}TQil4H@6fjihur_ zeBIdD`11(#+pF^rl)2%>#px%i)qh)WsWhRZRCPeHoVF-ZM;DQpj&*UYDdv;-@v;T+ zOE0M%eFOUp_FFG#3Ko9IanPf!@KviL#1TXi#l&hVnsuAvuUirmGqI7x#h=(^(MleF z!1GZ{Eh?$U@7RUXNx_;6RKXfGNP`=)z;$Wz0yq0oaw&_v$f5LHFEijvz?VAOC)~?2 zFUtzoWR+KVwJ&SDChNS;9(aC-ZvfxuXq#{=o4hGoY-O9bc)Kqu5?i$v*E31INPBmln6=fDhP|9#3uqZBOKo58KoXuT@CB&^RzSFjKK?+vt=yw(Oo# z6Go-F?L%s!Axd)2IKLFHd+ZySgw)ukH`Td@w^Bf;fJ~nhhA$H6@Jh8jqkE+$=S~r3U2BF#^uncMY+7U_6r6*uRuIs;D=p%meNO z^xGmsfxE>d%_OA{uN + +extern "C" { + int32_t _size() { + return 0; + } + + void _grow(int32_t) { + return; + } + + void sub_apply_0() { + int32_t x1 = _size(); + eosio::check(x1 == (int32_t)1, "_size fail 1"); + + _grow((int32_t)3); + + int32_t x3 = _size(); + eosio::check(x3 == (int32_t)1, "_size fail 3"); + + _grow((int32_t)1); + + int32_t x5 = _size(); + eosio::check(x5 == (int32_t)2, "_size fail 5"); + + _grow((int32_t)0); + + int32_t x7 = _size(); + eosio::check(x7 == (int32_t)2, "_size fail 7"); + + _grow((int32_t)4); + + int32_t x9 = _size(); + eosio::check(x9 == (int32_t)2, "_size fail 9"); + + _grow((int32_t)1); + + int32_t x11 = _size(); + eosio::check(x11 == (int32_t)3, "_size fail 11"); + + } + void apply(uint64_t, uint64_t, uint64_t test_to_run) { + volatile uint64_t* r = (uint64_t*)0; + *r = 0; + switch(test_to_run) { + case 0: + sub_apply_0(); + break; + } + } +} diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm b/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e207fbabed00e4cbf3c3d2b3f263072f81518086 GIT binary patch literal 972 zcmY+CNp2HS5QggwJ=m`ucV=fIe^PJiy&vTWxiP}nTB(50@27f$J zG;7m&`6}t0^^eaEkNW-2pmDaBfwFwzv*K%Fb40xO3JCrqyV^$oe4 z{LgWl%WjgT$YUre)$wyuP z=3+s_4+n*s>1(l%#eO_+nw%BiMe^Z*rrj^C?n@pf4^|+k9&6}2`5!mL#v8U?ap1qp zE%cfrZ#nkge!VSS! z(ZFhp*RaOxSV#D`nGL}=G94Fq%$wNcEm+>h7PecwgB{+*E=(GG@SdQ1UEarjovQAc za>dlOPua)^(_;%;mp9=67QrK`icv*oyGd0Uz2XQVq6?1o0pg0hIhSCIs%4bqU&%=- zCqb^u36i45zy!G-*rJY+1}qG0Px1$KN;Lvd)6~SMrjhr7Zkkwl qRIJM#ZC^B5q&wOJ(PYi;Xid>%5$|XZMUz!^L;u$(ipZX~LG&9Lub9IC literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/notes.md b/wasm-spec-tests/generator/altered-wasms/memory_size/notes.md new file mode 100644 index 0000000000..78dd876c1a --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/memory_size/notes.md @@ -0,0 +1,9 @@ +## Changes +- memory_size.0: + - Change to start with one page of memory + - This is necessary because the error messages for the `eosio::check` calls get put in the `data` segment so we must have a least one page of memory. + - Adjust memory page counts accordingly in tests +- memory_size.2: + - Change to start with one page of memory + - This is necessary because the error messages for the `eosio::check` calls get put in the `data` segment so we must have a least one page of memory. + - Adjust memory page counts accordingly in tests diff --git a/wasm-spec-tests/generator/altered-wasms/start/notes.md b/wasm-spec-tests/generator/altered-wasms/start/notes.md new file mode 100644 index 0000000000..522e1957a2 --- /dev/null +++ b/wasm-spec-tests/generator/altered-wasms/start/notes.md @@ -0,0 +1,9 @@ +## Changes +- start.5: + - Change to import `printi` from `env` + - Add new type for `param i64` and update import to use it + - Extend i32 to i64 in test to use the print function +- start.6: + - Change to import `printi` from `env` + - Add new type for `param i64` and update import to use it + - Extend i32 to i64 in test to use the print function diff --git a/wasm-spec-tests/generator/altered-wasms/start/start.5.wasm b/wasm-spec-tests/generator/altered-wasms/start/start.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..652be6cbeb6beb4f77ea2c332cc2d1d902cf1047 GIT binary patch literal 344 zcmYL@Jx;?w5QX3D?2qG(#8!xMHv}marCq{u5uCz8Nl0Si2tngbK}o?uC^!N~V+{q> z_ue<7(O}tc2>@LcjYtU%r<5o)Ktp32hT$)bVt}}2ZgmFZW3ex2lDG4WSMU*ZP z-DZY}N=zd>7Gk;(h-MvMo@QCT-Hx^rr_7to_ggDq4I+IyVINo}8aQ7G9DR_Uz1#%l z)f|q!@~HVDgKBmeqUItZ=p1z=q*n_egSkT}yzxcN`HL{|6Q}a2GB1_uV7;B=%-WLj I&`RflADgx~CjbBd literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generator/altered-wasms/start/start.6.wasm b/wasm-spec-tests/generator/altered-wasms/start/start.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..036d3748b935d32e6a816b4ca4deaddf7e86ba47 GIT binary patch literal 344 zcmYL@Jx;?w5QX3D?2qG(#8!xMHv}marCq{u5uCz8Nl0Si2tngbK}o?uC^!N~V+{q> z_ue<7(O}tc2>@LcjYtU%r<5o)Ktp32hT$)bVt}}2ZgmFZW3ex2lDG4WSMU*ZP z-DZY}N=zd>7Gk;(h-MvMo@QCT-Hx^rr_7to_ggDq4WjsT!alG{G;qEWIQk$xd$|e9 zt2rEd?DmVkqNON*`-5fhGeAXk2DpsP+QW5Izq6-9T*w-8T<@>8t%mO z-FtWU9yXyT0CbymB1Uu^W2D#t9bMEkO-MrAGyB8a+#kdCxZZ@|Pa|-#vflT>kDww9 z{%Q1KRKsa|7@=56Ay`U90}&}EP 0: + print(res.args) + raise CompileError(res.stderr) + + res = subprocess.run( + ['cdt-ld', intermediate_file, '-o', out_file], + capture_output=True + ) + if res.returncode > 0: + print(res.args) + raise CompileError(res.stderr) + + os.chdir(cwd) + +if __name__ == "__main__": + root_path = sys.argv[1] + in_file_path = sys.argv[2] if sys.argv[2] else "" + out_file_path = sys.argv[3] if sys.argv[3] else "" + main(root_path, in_file_path, out_file_path) diff --git a/wasm-spec-tests/generator/eosio_test_generator.cpp b/wasm-spec-tests/generator/eosio_test_generator.cpp new file mode 100644 index 0000000000..708c8b3ab3 --- /dev/null +++ b/wasm-spec-tests/generator/eosio_test_generator.cpp @@ -0,0 +1,431 @@ +#include "picojson.hpp" + +#include +#include +#include +#include +#include +#include + +#include "eosio_test_generator.hpp" + +using namespace std; + +const set blacklist_memory_clearing = { "address.0", "address.2", "address.3", "address.4", + "float_exprs.59", "float_exprs.60", "float_memory.0", "float_memory.1", + "float_memory.2", "float_memory.3", "float_memory.4", "float_memory.5", + "memory.25", "memory_trap.1", "start.3", "start.4" }; + +const set whitelist_force_check_throw = { "memory.6", "memory.7" }; + +const string include_eosio = "#include \n\n"; +const string extern_c = "extern \"C\" {\n"; +const string apply_func = " void apply(uint64_t, uint64_t, uint64_t test_to_run) {\n"; +const string mem_clear = " volatile uint64_t* r = (uint64_t*)0;\n *r = 0;\n"; + +// NOTE: Changing this will likely break one or more tests. +const int NUM_TESTS_PER_SUB_APPLY = 100; + +struct spec_test_function_state { + set already_written_funcs; + map name_to_index; + int index = 0; +}; + +void write_file(ofstream& file, string test_name, string funcs, string sub_applies, string apply) { + stringstream out; + string end_brace = "}"; + + out << include_eosio; + out << extern_c; + out << funcs; + out << sub_applies; + out << apply_func; + if (!blacklist_memory_clearing.count(test_name)) { + out << mem_clear; + } + out << apply; + out << " }\n"; + out << "}\n"; + + file << out.str(); + out.str(""); +} + +void write_map_file(ofstream& file, spec_test_function_state& func_state) { + stringstream out; + + out << "{\n"; + bool first = true; + for (const auto& [name, index] : func_state.name_to_index) { + if (first) { + first = false; + } else { + out << ",\n"; + } + out << " \"" << name << "\"" + << " : " << index; + } + out << "\n}\n"; + + file << out.str(); + out.str(""); +} + +string c_type(string wasm_type) { + string c_type = ""; + if (wasm_type == "i32") { + c_type = "int32_t"; + } else if (wasm_type == "i64") { + c_type = "int64_t"; + } else if (wasm_type == "f32") { + c_type = "float"; + } else if (wasm_type == "f64") { + c_type = "double"; + } else { + c_type = "void"; + } + + return c_type; +} + +vector> get_params(picojson::object action) { + vector> params = {}; + + auto args = action["args"].get(); + for (auto a : args) { + auto arg = a.get(); + + params.emplace_back(arg["type"].to_str(), arg["value"].to_str()); + } + + return params; +} + +pair get_expected_return(picojson::object test) { + pair expected_return; + + auto expecteds = test["expected"].get(); + for (auto e : expecteds) { + auto expect = e.get(); + string type = expect["type"].to_str(); + string value = expect["value"].to_str(); + expected_return = make_pair(type, value); + } + + return expected_return; +} + +string write_test_function(string function_name, picojson::object test, spec_test_function_state& func_state) { + stringstream out; + + auto action = test["action"].get(); + + vector> params = get_params(action); + pair expected_return = get_expected_return(test); + + if (!func_state.already_written_funcs.insert(function_name).second) { + return ""; + } + + func_state.name_to_index[function_name] = func_state.index; + ++func_state.index; + + auto [return_type, return_val] = expected_return; + out << " " << c_type(return_type) << " "; + out << function_name; + out << "("; + + if (params.size() > 0) { + for (auto p = params.begin(); p != params.end() - 1; p++) { + auto [type, _] = *p; + out << c_type(type) << ", "; + } + + auto [type, _] = *(params.end() - 1); + out << c_type(type); + } + + out << ") {\n"; + + if (return_type == "i32" || return_type == "i64") { + out << " " + << " return 0;"; + } else if (return_type == "f32" || return_type == "f64") { + out << " " + << " return 0.0f;"; + } else { + out << " " + << " return;"; + } + + out << "\n }\n\n"; + return out.str(); +} + +string write_test_function_call(string function_name, picojson::object test, int var_index) { + stringstream out; + stringstream func_call; + string return_cast = ""; + + auto action = test["action"].get(); + vector> params = get_params(action); + pair expected_return = get_expected_return(test); + + auto [return_type, return_val] = expected_return; + + int param_index_offset = var_index; + if (params.size() > 0) { + int param_index = 0; + for (auto p = params.begin(); p != params.end(); p++) { + auto [type, value] = *p; + if (type == "f32") { + out << " " + << "int32_t " + << "y" << param_index << param_index_offset << " = " << value << ";\n"; + param_index++; + } else if (type == "f64") { + out << " " + << "int64_t " + << "y" << param_index << param_index_offset << " = " << value << ";\n"; + param_index++; + } + } + } + + bool needs_local_return = false; + if (return_val != "null") { + needs_local_return = c_type(return_type) != "void"; + } + + // if return_type is float or double, + // generate local var and reinterpret cast. + if (needs_local_return) { + if (return_type == "f32") { + return_cast = "*(uint32_t*)&"; + } else if (return_type == "f64") { + return_cast = "*(uint64_t*)&"; + } + + func_call << " " + << " " << c_type(return_type) << " " + << "x" << var_index << " = "; + } + + func_call << function_name << "("; + + if (params.size() > 0) { + bool first = true; + int param_index = 0; + for (const auto& [type, value] : params) { + if (first) { + first = false; + } else { + func_call << ","; + } + + if (type == "f32") { + func_call << "*(float*)&" + << "y" << param_index << param_index_offset; + param_index++; + } else if (type == "f64") { + func_call << "*(double*)&" + << "y" << param_index << param_index_offset; + param_index++; + } else { + func_call << "(" << c_type(type) << ") " << value; + } + } + } + func_call << ");"; + + if (needs_local_return) { + out << func_call.str() << "\n"; + } + + if (return_val != "" && return_val != "null") { + out << " " + << " " + << "eosio::check("; + if (needs_local_return) { + out << return_cast << "x" << var_index; + } else { + out << func_call.str(); + } + out << " == "; + out << "(" << c_type(return_type) << ")" << return_val; + out << ", " + << "\"" << function_name << " fail " << var_index << "\""; + out << ");\n\n"; + } else { + // If there's no expected return, just call the function to prove it doesn't blow up. + out << " " + << " " << func_call.str() << "\n\n"; + } + return out.str(); +} + +void usage(const char* name) { + std::cerr << "Usage:\n" + << " " << name << " [json file created by wast2json]\n"; + std::exit(2); +} + +map> get_file_func_mappings(picojson::value v) { + map> file_func_mappings; + auto& o = v.get(); + string filename = ""; + + picojson::array commands = o["commands"].get(); + + for (auto i = o.begin(); i != o.end(); i++) { + if (i->first == "commands") { + for (const auto& o : i->second.get()) { + auto obj = o.get(); + if (obj["type"].to_str() == "module") { + filename = obj["filename"].to_str(); + file_func_mappings[filename] = {}; + } + if (obj["type"].to_str() == "assert_return" || obj["type"].to_str() == "action" || + obj["type"].to_str() == "assert_exhaustion" || obj["type"].to_str() == "assert_return_canonical_nan" || + obj["type"].to_str() == "assert_return_arithmetic_nan" || obj["type"].to_str() == "assert_exhaustion" || + obj["type"].to_str() == "assert_trap") { + file_func_mappings[filename].push_back(obj); + } + } + } + } + + return file_func_mappings; +} + +string create_sub_apply(string func_calls, string name) { + stringstream ss; + ss << " void " << name << "() {\n"; + ss << func_calls; + ss << " }\n"; + return ss.str(); +} + +int main(int argc, char** argv) { + ifstream ifs; + stringstream ss; + if (argc != 2 || !strcmp(argv[1], "-h") || !strcmp(argv[1], "--help")) { + usage(argc ? argv[0] : "eosio_test_generator"); + } + ifs.open(argv[1]); + if (!ifs) { + std::cerr << "Cannot open file: " << argv[1] << std::endl; + return EXIT_FAILURE; + } + string s; + while (getline(ifs, s)) { ss << s; } + ifs.close(); + + picojson::value v; + picojson::parse(v, ss.str()); + string test_suite_name; + + map> file_func_mappings = get_file_func_mappings(v); + map> test_mappings; + + vector spec_tests; + + for (const auto& f : file_func_mappings) { + ofstream ofs_cpp; + ofstream ofs_map; + + stringstream test_funcs; + stringstream sub_apply_funcs; + stringstream apply_func; + + vector sub_applies; + + int pos = f.first.find_last_of('.'); + string test_name = f.first.substr(0, pos); + string out_file_cpp = test_name + ".wasm.cpp"; + string out_file_map = test_name + ".wasm.map"; + + ofs_cpp.open(out_file_cpp, ofstream::out); + ofs_map.open(out_file_map, ofstream::out); + + vector assert_trap_tests; + vector assert_return_tests; + + spec_test_function_state func_state; + + for (auto test : f.second) { + string type_test = test["type"].to_str(); + auto action = test["action"].get(); + string function_name = action["field"].to_str(); + function_name = "_" + convert_to_valid_cpp_identifier(function_name); + + test_funcs << write_test_function(function_name, test, func_state); + int is_whitelisted = whitelist_force_check_throw.count(test_name); + if (type_test == "assert_trap" || type_test == "assert_exhaustion" || is_whitelisted) { + assert_trap_tests.push_back(test); + } else { + assert_return_tests.push_back(test); + } + } + + int sub_apply_index = 0; + for (auto test : assert_trap_tests) { + auto action = test["action"].get(); + string function_name = action["field"].to_str(); + function_name = "_" + convert_to_valid_cpp_identifier(function_name); + + string name = "sub_apply_" + to_string(sub_apply_index); + sub_applies.push_back(name); + string func_call = write_test_function_call(function_name, test, sub_apply_index); + string sub_apply = create_sub_apply(func_call, name); + + sub_apply_funcs << sub_apply; + test_mappings[test_name].insert(std::make_pair(sub_apply_index, "assert_trap")); + ++sub_apply_index; + } + + int assert_trap_end_index = sub_apply_index; + + stringstream ss; + int i = 1; + int length_tests = assert_return_tests.size(); + for (auto test : assert_return_tests) { + auto action = test["action"].get(); + string function_name = action["field"].to_str(); + function_name = "_" + convert_to_valid_cpp_identifier(function_name); + + if (i % NUM_TESTS_PER_SUB_APPLY == 0 || i == length_tests) { + string name = "sub_apply_" + to_string(sub_apply_index); + sub_applies.push_back(name); + + ss << write_test_function_call(function_name, test, i); + sub_apply_funcs << create_sub_apply(ss.str(), name); + ss.str(""); + test_mappings[test_name].insert(std::make_pair(sub_apply_index, "")); + ++sub_apply_index; + } else { + ss << write_test_function_call(function_name, test, i); + } + ++i; + } + + spec_tests.push_back(spec_test{ test_name, 0, assert_trap_end_index, assert_trap_end_index, sub_apply_index }); + + int index = 0; + apply_func << " switch(test_to_run) {\n"; + for (auto sub_apply : sub_applies) { + apply_func << " case " << index << ":\n"; + apply_func << " " << sub_apply << "();" + << "\n"; + apply_func << " break;\n"; + ++index; + } + apply_func << " }\n"; + + write_file(ofs_cpp, test_name, test_funcs.str(), sub_apply_funcs.str(), apply_func.str()); + write_map_file(ofs_map, func_state); + } + + write_tests(spec_tests); +} diff --git a/wasm-spec-tests/generator/eosio_test_generator.hpp b/wasm-spec-tests/generator/eosio_test_generator.hpp new file mode 100644 index 0000000000..84ad09fa80 --- /dev/null +++ b/wasm-spec-tests/generator/eosio_test_generator.hpp @@ -0,0 +1,17 @@ +#pragma once +#include +#include +#include +#include + +struct spec_test { + std::string name; + int assert_trap_start_index; + int assert_trap_end_index; + int assert_return_start_index; + int assert_return_end_index; +}; + +std::string convert_to_valid_cpp_identifier(std::string val); + +void write_tests(std::vector tests); diff --git a/wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp b/wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp new file mode 100644 index 0000000000..eaa0d6ea61 --- /dev/null +++ b/wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp @@ -0,0 +1,129 @@ +#include +#include +#include +#include +#include +#include + +#include "eosio_test_generator.hpp" + +using namespace std; + +const string test_includes = "#include \n\n"; +const string boost_xrange = "boost::unit_test::data::xrange"; + +string convert_to_valid_cpp_identifier(string val) { + string ret_val = val; + for (int i = 0; i <= val.size(); i++) { + if (val[i] == '-' || val[i] == '.') { + ret_val[i] = '_'; + } else { + ret_val[i] = val[i]; + } + } + + return ret_val; +} + +string create_module_test_case(string test_name, int start_index, int end_index) { + stringstream func; + + func << "BOOST_DATA_TEST_CASE(" << test_name << "_module, " << boost_xrange << "(" << start_index << "," << end_index + << "), index) { try {\n"; + func << " TESTER tester;\n"; + func << " tester.produce_block();\n"; + func << " tester.create_account( \"wasmtest\"_n );\n"; + func << " tester.produce_block();\n"; + func << " tester.set_code(\"wasmtest\"_n, wasm_" << test_name << ");\n"; + func << " tester.produce_block();\n\n"; + func << " action test;\n"; + func << " test.account = \"wasmtest\"_n;\n"; + func << " test.name = account_name((uint64_t)index);\n"; + func << " test.authorization = {{\"wasmtest\"_n, config::active_name}};\n\n"; + func << " push_action(tester, std::move(test), \"wasmtest\"_n.to_uint64_t());\n"; + func << " tester.produce_block();\n"; + func << " BOOST_REQUIRE_EQUAL( tester.validate(), true );\n"; + func << "} FC_LOG_AND_RETHROW() }\n\n"; + + return func.str(); +} + +string create_passing_data_test_case(string test_name, int start_index, int end_index) { + stringstream func; + + func << "BOOST_DATA_TEST_CASE(" << test_name << "_pass, " << boost_xrange << "(" << start_index << "," << end_index + << "), index) { try {\n"; + func << " TESTER tester;\n"; + func << " tester.produce_block();\n"; + func << " tester.create_account( \"wasmtest\"_n );\n"; + func << " tester.produce_block();\n"; + func << " tester.set_code(\"wasmtest\"_n, wasm_" << test_name << ");\n"; + func << " tester.produce_block();\n\n"; + func << " action test;\n"; + func << " test.account = \"wasmtest\"_n;\n"; + func << " test.name = account_name((uint64_t)index);\n"; + func << " test.authorization = {{\"wasmtest\"_n, config::active_name}};\n\n"; + func << " push_action(tester, std::move(test), \"wasmtest\"_n.to_uint64_t());\n"; + func << " tester.produce_block();\n"; + func << " BOOST_REQUIRE_EQUAL( tester.validate(), true );\n"; + func << "} FC_LOG_AND_RETHROW() }\n\n"; + + return func.str(); +} + +string create_check_throw_data_test_case(string test_name, int start_index, int end_index) { + stringstream func; + + func << "BOOST_DATA_TEST_CASE(" << test_name << "_check_throw, " << boost_xrange << "(" << start_index << "," + << end_index << "), index) { try {\n"; + func << " TESTER tester;\n"; + func << " tester.produce_block();\n"; + func << " tester.create_account( \"wasmtest\"_n );\n"; + func << " tester.produce_block();\n"; + func << " tester.set_code(\"wasmtest\"_n, wasm_" << test_name << ");\n"; + func << " tester.produce_block();\n\n"; + func << " action test;\n"; + func << " test.account = \"wasmtest\"_n;\n"; + func << " test.name = account_name((uint64_t)index);\n"; + func << " test.authorization = {{\"wasmtest\"_n, config::active_name}};\n\n"; + func << " BOOST_CHECK_THROW(push_action(tester, std::move(test), \"wasmtest\"_n.to_uint64_t()), " + "wasm_execution_error);\n"; + func << " tester.produce_block();\n"; + func << "} FC_LOG_AND_RETHROW() }\n\n"; + + return func.str(); +} + +void write_tests(vector tests) { + string file_name = ""; + stringstream test_ss; + + for (const auto& t : tests) { + file_name = t.name.substr(0, t.name.find_last_of('.')); + + bool has_assert_trap_tests = t.assert_trap_start_index < t.assert_trap_end_index; + bool has_assert_return_tests = t.assert_return_start_index < t.assert_return_end_index; + + string name = convert_to_valid_cpp_identifier(t.name); + test_ss << "const string wasm_str_" << name << " = base_dir + \"/" << t.name << ".wasm\";\n"; + test_ss << "std::vector wasm_" << name << "= read_wasm(wasm_str_" << name << ".c_str());\n\n"; + + if (!has_assert_return_tests && !has_assert_trap_tests) { + test_ss << create_module_test_case(name, 0, 1); + } else { + if (has_assert_trap_tests) { + test_ss << create_check_throw_data_test_case(name, t.assert_trap_start_index, t.assert_trap_end_index); + } + + if (has_assert_return_tests) { + test_ss << create_passing_data_test_case(name, t.assert_return_start_index, t.assert_return_end_index); + } + } + } + + ofstream ofs; + ofs.open(file_name + ".cpp", ofstream::out); + + ofs << test_includes; + ofs << test_ss.str(); +} diff --git a/wasm-spec-tests/generator/generate_eosio_tests.py b/wasm-spec-tests/generator/generate_eosio_tests.py new file mode 100644 index 0000000000..b3be1d789d --- /dev/null +++ b/wasm-spec-tests/generator/generate_eosio_tests.py @@ -0,0 +1,163 @@ +#!/usr/bin/env python3 +import json +import re +import subprocess +import sys + +from generated_wasm import GeneratedWASM +from regexes import DATA_REGEX, EXPORT_REGEX, FUNC_REGEX +from test_wasm import TestWASM + +from compile_tests import CompileError + +def main(generated_wasm_file, test_wasm_file, out_wasm_file, map_file): + def read_wasm_file(wasm_file): + out = subprocess.run(['eosio-wasm2wast', wasm_file], capture_output=True) + generated_wast_string = out.stdout.decode('utf-8') + if generated_wast_string: + return generated_wast_string + else: + n = (' '.join(map_file.split('.')[0:2])).split('/')[1] + raise CompileError(f'Failed to convert {wasm_file} to wast for {n}') + + + def get_map(m_file): + with open(m_file, 'r') as f: + name_to_num_map = json.load(f) + num_to_name_map = {v:k for k, v in name_to_num_map.items()} + return num_to_name_map + + num_to_name_map = get_map(map_file) + + generated_wasm = GeneratedWASM() + test_wasm = TestWASM() + + generated_wasm.read_wasm(read_wasm_file(generated_wasm_file)) + test_wasm.read_wasm(read_wasm_file(test_wasm_file)) + + type_map = test_wasm.shift_types(generated_wasm.max_type) + max_func_num = test_wasm.shift_imports(type_map, generated_wasm.max_import) + + max_func_num = generated_wasm.shift_base_funcs(max_func_num) + + num_to_name_map = { + int(k) + generated_wasm.num_imports_base_functions + 1: + v for k, v in num_to_name_map.items() + } + + max_func_num = test_wasm.shift_funcs(type_map, max_func_num) + test_wasm.shift_calls(type_map) + exports_map = test_wasm.shift_exports() + + generated_wasm.create_imports_map() + generated_wasm.shift_funcs(num_to_name_map, max_func_num) + + generated_wasm.shift_calls(num_to_name_map, exports_map) + + generated_wasm.shift_exports() + + test_wasm.shift_elems() + test_wasm.shift_start() + max_global = test_wasm.get_max_global() + + generated_wasm.shift_globals(max_global) + + with open(out_wasm_file, 'w') as f: + f.write(write_merged_wasm(generated_wasm, test_wasm)) + + +def merge_data_section(generated_wasm, test_wasm): + data = [] + + test_wasm_zero = '' + for d in test_wasm.data: + match = re.search(DATA_REGEX, d) + if int(match.group(2)) != 0: + data.append(d) + else: + test_wasm_zero = d + data.append(d) + + for d in generated_wasm.data: + match = re.search(DATA_REGEX, d) + if int(match.group(2)) != 0: + data.append(d) + else: + if not test_wasm_zero: + data.append(d) + + return data + + +def write_merged_wasm(generated_wasm, test_wasm): + out = '(module\n' + for t in generated_wasm.types: + out += t + '\n' + for t in test_wasm.types: + out += t + '\n' + + for i in generated_wasm.imports: + out += i + '\n' + for i in test_wasm.imports: + out += i + '\n' + + for f in generated_wasm.base_funcs: + out += f + '\n' + + for f in test_wasm.funcs: + out += f + '\n' + + for f in generated_wasm.end_funcs: + out += f + '\n' + + if test_wasm.tables: + for t in test_wasm.tables: + out += t + '\n' + else: + for t in generated_wasm.tables: + out += t + '\n' + + if test_wasm.memory: + for m in test_wasm.memory: + out += m + '\n' + else: + for m in generated_wasm.memory: + out += m + '\n' + + for g in test_wasm.global_vars: + out += g + '\n' + for g in generated_wasm.global_vars: + out += g + '\n' + + for e in test_wasm.exports: + out += e + '\n' + for e in generated_wasm.exports: + out += e + '\n' + + data = merge_data_section(generated_wasm, test_wasm) + + for d in data: + out += d + '\n' + + if test_wasm.tables: + for e in test_wasm.elems: + out += e + '\n' + else: + for e in generated_wasm.elems: + out += e + '\n' + + if test_wasm.start: + out += test_wasm.start + '\n' + elif generated_wasm.start: + out += generated_wasm.start + '\n' + + out += ')\n' + return out + + +if __name__ == "__main__": + g_wasm_file = sys.argv[1] + t_wasm_file = sys.argv[2] + o_wasm_file = sys.argv[3] + mp_file = sys.argv[4] + main(g_wasm_file, t_wasm_file, o_wasm_file, mp_file) diff --git a/wasm-spec-tests/generator/generated_wasm.py b/wasm-spec-tests/generator/generated_wasm.py new file mode 100644 index 0000000000..9a8f4bccbb --- /dev/null +++ b/wasm-spec-tests/generator/generated_wasm.py @@ -0,0 +1,183 @@ +import re + +from regexes import ( + CALL_REGEX, CALL_INDIRECT_REGEX, + EXPORT_REGEX, FUNC_REGEX, + GET_SET_GLOBAL_REGEX, GLOBAL_REGEX, + IMPORT_REGEX +) +from wasm import WASM + +class GeneratedWASM(WASM): + def __init__(self): + super(GeneratedWASM, self).__init__() + self.base_funcs = [] + self.end_funcs = [] + self.imports_map = {} + self.num_imports_base_functions = 0 + + def shift_base_funcs(self, max_func): + max_import = self.get_max_import() + + new_starting_index = 0 + self.num_imports_base_functions = max_import + for f in self.funcs: + for l in f.split('\n'): + match = re.search(FUNC_REGEX, l) + if match: + func_num = int(match.group(2)) + # The "base functions" are the 3 functions that always follow the imports. + if func_num > int(max_import) and func_num <= int(max_import) + 3: + new_func_num, new_func = self.shift_func(f, max_func) + self.base_funcs.append(new_func) + self.function_symbol_map[match.group(2)] = new_func_num + + new_starting_index += 1 + max_func = int(max_func) + 1 + self.num_imports_base_functions = int(self.num_imports_base_functions) + 1 + + self.funcs = self.funcs[new_starting_index:] + return max_func + + def shift_func(self, func, max_function_num): + new_func_num = int(max_function_num) + 1 + sub_func = lambda x: f'{x.group(1)}{new_func_num}{x.group(3)}{x.group(4)}{x.group(5)}' + new_func = re.sub(FUNC_REGEX, sub_func, func) + + return (new_func_num, new_func) + + def shift_funcs(self, num_to_name_map, max_func_num): + end_funcs = [] + for f in self.funcs: + match = re.search(FUNC_REGEX, f) + func_num = match.group(2) + if int(func_num) in num_to_name_map: + continue + + max_func_num, new_func = self.shift_func(f, max_func_num) + self.function_symbol_map[func_num] = max_func_num + end_funcs.append(new_func) + + self.end_funcs = end_funcs + return max_func_num + + def shift_calls(self, num_to_name_map, export_map): + new_end_funcs = [] + for e in self.end_funcs: + func = '' + for l in e.split('\n'): + if re.search(CALL_INDIRECT_REGEX, l): + pass + elif re.search(CALL_REGEX, l): + num = re.search(CALL_REGEX, l).group(2) + if int(num) in num_to_name_map: + name = num_to_name_map[int(num)] + new_num = export_map[name] + new_call = re.sub(CALL_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', l) + func += new_call + '\n' + elif num in self.function_symbol_map: + new_num = self.function_symbol_map[num] + new_call = re.sub(CALL_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', l) + func += new_call + '\n' + elif num in self.imports_map: + # We're calling an import so we don't need to do anything + func += l + else: + print('-----', e) + print('Error attempting to shift calls in compiled wasm') + raise Exception('Error attempting to shift calls in compiled wasm.') + else: + func += l + '\n' + + new_end_funcs.append(func) + + self.end_funcs = new_end_funcs + + def shift_exports(self): + def get_func_num(f): + return re.search(EXPORT_REGEX, f).group(4) + + def inject_new_func_num(f, new_func_num): + return re.sub(EXPORT_REGEX, lambda x: f'{x.group(1)}{x.group(2)}{x.group(3)}{new_func_num}{x.group(5)}', f) + + new_exports = [] + for e in self.exports: + if e.find('(func ') > -1: + func_num = get_func_num(e) + new_func_num = self.function_symbol_map[func_num] + + new_export = inject_new_func_num(e, new_func_num) + + new_exports.append(new_export) + else: + new_exports.append(e) + + self.exports = new_exports + + def shift_globals(self, max_global_var): + new_globals = [] + global_map = {} + for g in self.global_vars: + match = re.search(GLOBAL_REGEX, g) + + new_num = int(max_global_var) + 1 + new_glob = re.sub(GLOBAL_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', g) + + global_map[match.group(2)] = new_num + + max_global_var = int(max_global_var) + 1 + new_globals.append(new_glob) + + self.global_vars = new_globals + + new_base_funcs = [] + for f in self.base_funcs: + func = '' + for l in f.split('\n'): + match = re.search(GET_SET_GLOBAL_REGEX, l) + if match: + num = match.group(2) + new_num = global_map[num] + new_get_set = re.sub(GET_SET_GLOBAL_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', l) + + func += new_get_set + '\n' + else: + func += l + '\n' + new_base_funcs.append(func) + + self.base_funcs = new_base_funcs + + new_end_funcs = [] + for f in self.end_funcs: + func = '' + for l in f.split('\n'): + match = re.search(GET_SET_GLOBAL_REGEX, l) + if match: + num = match.group(2) + new_num = global_map[num] + new_get_set = re.sub(GET_SET_GLOBAL_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', l) + + func += new_get_set + '\n' + else: + func += l + '\n' + new_end_funcs.append(func) + + self.end_funcs = new_end_funcs + + def create_imports_map(self): + imports_map = {} + for i in self.imports: + match = re.search(IMPORT_REGEX, i) + func_num = match.group(6) + imports_map[func_num] = True + + self.imports_map = imports_map + + def get_max_import(self): + max_import = -1 + for f in self.imports: + match = re.search(IMPORT_REGEX, f) + if match: + max_import = match.group(6) + + return max_import diff --git a/wasm-spec-tests/generator/lookahead.py b/wasm-spec-tests/generator/lookahead.py new file mode 100644 index 0000000000..68f983551c --- /dev/null +++ b/wasm-spec-tests/generator/lookahead.py @@ -0,0 +1,26 @@ +class LookAhead(): + """ + Look ahead iterator. Look ahead using `.peek`. + """ + _NONE = object() + + def __init__(self, iterable): + self._it = iter(iterable) + self._set_peek() + + def __iter__(self): + return self + + def __next__(self): + ret = self.peek + self._set_peek() + return ret + + def _set_peek(self): + try: + self.peek = next(self._it) + except StopIteration: + self.peek = self._NONE + + def __bool__(self): + return self.peek is not self._NONE diff --git a/wasm-spec-tests/generator/picojson.hpp b/wasm-spec-tests/generator/picojson.hpp new file mode 100644 index 0000000000..dcfe88dbb0 --- /dev/null +++ b/wasm-spec-tests/generator/picojson.hpp @@ -0,0 +1,1109 @@ +/* + * Copyright 2009-2010 Cybozu Labs, Inc. + * Copyright 2011-2014 Kazuho Oku + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef picojson_h +# define picojson_h + +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include + +// for isnan/isinf +# if __cplusplus >= 201103L +# include +# else +extern "C" { +# ifdef _MSC_VER +# include +# elif defined(__INTEL_COMPILER) +# include +# else +# include +# endif +} +# endif + +# ifndef PICOJSON_USE_RVALUE_REFERENCE +# if (defined(__cpp_rvalue_references) && __cpp_rvalue_references >= 200610) || \ + (defined(_MSC_VER) && _MSC_VER >= 1600) +# define PICOJSON_USE_RVALUE_REFERENCE 1 +# else +# define PICOJSON_USE_RVALUE_REFERENCE 0 +# endif +# endif // PICOJSON_USE_RVALUE_REFERENCE + +# ifndef PICOJSON_NOEXCEPT +# if PICOJSON_USE_RVALUE_REFERENCE +# define PICOJSON_NOEXCEPT noexcept +# else +# define PICOJSON_NOEXCEPT throw() +# endif +# endif + +// experimental support for int64_t (see README.mkdn for detail) +# ifdef PICOJSON_USE_INT64 +# define __STDC_FORMAT_MACROS +# include +# include +# endif + +// to disable the use of localeconv(3), set PICOJSON_USE_LOCALE to 0 +# ifndef PICOJSON_USE_LOCALE +# define PICOJSON_USE_LOCALE 1 +# endif +# if PICOJSON_USE_LOCALE +extern "C" { +# include +} +# endif + +# ifndef PICOJSON_ASSERT +# define PICOJSON_ASSERT(e) \ + do { \ + if (!(e)) \ + throw std::runtime_error(#e); \ + } while (0) +# endif + +# ifdef _MSC_VER +# define SNPRINTF _snprintf_s +# pragma warning(push) +# pragma warning(disable : 4244) // conversion from int to char +# pragma warning(disable : 4127) // conditional expression is constant +# pragma warning(disable : 4702) // unreachable code +# else +# define SNPRINTF snprintf +# endif + +namespace picojson { + +enum { + null_type, + boolean_type, + number_type, + string_type, + array_type, + object_type +# ifdef PICOJSON_USE_INT64 + , + int64_type +# endif +}; + +enum { INDENT_WIDTH = 2 }; + +struct null {}; + +class value { + public: + typedef std::vector array; + typedef std::map object; + union _storage { + bool boolean_; + double number_; +# ifdef PICOJSON_USE_INT64 + int64_t int64_; +# endif + std::string* string_; + array* array_; + object* object_; + }; + + protected: + int type_; + _storage u_; + + public: + value(); + value(int type, bool); + explicit value(bool b); +# ifdef PICOJSON_USE_INT64 + explicit value(int64_t i); +# endif + explicit value(double n); + explicit value(const std::string& s); + explicit value(const array& a); + explicit value(const object& o); +# if PICOJSON_USE_RVALUE_REFERENCE + explicit value(std::string&& s); + explicit value(array&& a); + explicit value(object&& o); +# endif + explicit value(const char* s); + value(const char* s, size_t len); + ~value(); + value(const value& x); + value& operator=(const value& x); +# if PICOJSON_USE_RVALUE_REFERENCE + value(value&& x) PICOJSON_NOEXCEPT; + value& operator=(value&& x) PICOJSON_NOEXCEPT; +# endif + void swap(value& x) PICOJSON_NOEXCEPT; + template + bool is() const; + template + const T& get() const; + template + T& get(); + template + void set(const T&); +# if PICOJSON_USE_RVALUE_REFERENCE + template + void set(T&&); +# endif + bool evaluate_as_boolean() const; + const value& get(const size_t idx) const; + const value& get(const std::string& key) const; + value& get(const size_t idx); + value& get(const std::string& key); + + bool contains(const size_t idx) const; + bool contains(const std::string& key) const; + std::string to_str() const; + template + void serialize(Iter os, bool prettify = false) const; + std::string serialize(bool prettify = false) const; + + private: + template + value(const T*); // intentionally defined to block implicit conversion of pointer to bool + template + static void _indent(Iter os, int indent); + template + void _serialize(Iter os, int indent) const; + std::string _serialize(int indent) const; + void clear(); +}; + +typedef value::array array; +typedef value::object object; + +inline value::value() : type_(null_type), u_() {} + +inline value::value(int type, bool) : type_(type), u_() { + switch (type) { +# define INIT(p, v) \ + case p##type: u_.p = v; break + INIT(boolean_, false); + INIT(number_, 0.0); +# ifdef PICOJSON_USE_INT64 + INIT(int64_, 0); +# endif + INIT(string_, new std::string()); + INIT(array_, new array()); + INIT(object_, new object()); +# undef INIT + default: break; + } +} + +inline value::value(bool b) : type_(boolean_type), u_() { u_.boolean_ = b; } + +# ifdef PICOJSON_USE_INT64 +inline value::value(int64_t i) : type_(int64_type), u_() { u_.int64_ = i; } +# endif + +inline value::value(double n) : type_(number_type), u_() { + if ( +# ifdef _MSC_VER + !_finite(n) +# elif __cplusplus >= 201103L + std::isnan(n) || std::isinf(n) +# else + isnan(n) || isinf(n) +# endif + ) { + throw std::overflow_error(""); + } + u_.number_ = n; +} + +inline value::value(const std::string& s) : type_(string_type), u_() { u_.string_ = new std::string(s); } + +inline value::value(const array& a) : type_(array_type), u_() { u_.array_ = new array(a); } + +inline value::value(const object& o) : type_(object_type), u_() { u_.object_ = new object(o); } + +# if PICOJSON_USE_RVALUE_REFERENCE +inline value::value(std::string&& s) : type_(string_type), u_() { u_.string_ = new std::string(std::move(s)); } + +inline value::value(array&& a) : type_(array_type), u_() { u_.array_ = new array(std::move(a)); } + +inline value::value(object&& o) : type_(object_type), u_() { u_.object_ = new object(std::move(o)); } +# endif + +inline value::value(const char* s) : type_(string_type), u_() { u_.string_ = new std::string(s); } + +inline value::value(const char* s, size_t len) : type_(string_type), u_() { u_.string_ = new std::string(s, len); } + +inline void value::clear() { + switch (type_) { +# define DEINIT(p) \ + case p##type: delete u_.p; break + DEINIT(string_); + DEINIT(array_); + DEINIT(object_); +# undef DEINIT + default: break; + } +} + +inline value::~value() { clear(); } + +inline value::value(const value& x) : type_(x.type_), u_() { + switch (type_) { +# define INIT(p, v) \ + case p##type: u_.p = v; break + INIT(string_, new std::string(*x.u_.string_)); + INIT(array_, new array(*x.u_.array_)); + INIT(object_, new object(*x.u_.object_)); +# undef INIT + default: u_ = x.u_; break; + } +} + +inline value& value::operator=(const value& x) { + if (this != &x) { + value t(x); + swap(t); + } + return *this; +} + +# if PICOJSON_USE_RVALUE_REFERENCE +inline value::value(value&& x) PICOJSON_NOEXCEPT : type_(null_type), u_() { swap(x); } +inline value& value::operator=(value&& x) PICOJSON_NOEXCEPT { + swap(x); + return *this; +} +# endif +inline void value::swap(value& x) PICOJSON_NOEXCEPT { + std::swap(type_, x.type_); + std::swap(u_, x.u_); +} + +# define IS(ctype, jtype) \ + template <> \ + inline bool value::is() const { \ + return type_ == jtype##_type; \ + } +IS(null, null) +IS(bool, boolean) +# ifdef PICOJSON_USE_INT64 +IS(int64_t, int64) +# endif +IS(std::string, string) +IS(array, array) +IS(object, object) +# undef IS +template <> +inline bool value::is() const { + return type_ == number_type +# ifdef PICOJSON_USE_INT64 + || type_ == int64_type +# endif + ; +} + +# define GET(ctype, var) \ + template <> \ + inline const ctype& value::get() const { \ + PICOJSON_ASSERT("type mismatch! call is() before get()" && is()); \ + return var; \ + } \ + template <> \ + inline ctype& value::get() { \ + PICOJSON_ASSERT("type mismatch! call is() before get()" && is()); \ + return var; \ + } +GET(bool, u_.boolean_) +GET(std::string, *u_.string_) +GET(array, *u_.array_) +GET(object, *u_.object_) +# ifdef PICOJSON_USE_INT64 +GET(double, (type_ == int64_type && + (const_cast(this)->type_ = number_type, const_cast(this)->u_.number_ = u_.int64_), + u_.number_)) +GET(int64_t, u_.int64_) +# else +GET(double, u_.number_) +# endif +# undef GET + +# define SET(ctype, jtype, setter) \ + template <> \ + inline void value::set(const ctype& _val) { \ + clear(); \ + type_ = jtype##_type; \ + setter \ + } +SET(bool, boolean, u_.boolean_ = _val;) +SET(std::string, string, u_.string_ = new std::string(_val);) +SET(array, array, u_.array_ = new array(_val);) +SET(object, object, u_.object_ = new object(_val);) +SET(double, number, u_.number_ = _val;) +# ifdef PICOJSON_USE_INT64 +SET(int64_t, int64, u_.int64_ = _val;) +# endif +# undef SET + +# if PICOJSON_USE_RVALUE_REFERENCE +# define MOVESET(ctype, jtype, setter) \ + template <> \ + inline void value::set(ctype && _val) { \ + clear(); \ + type_ = jtype##_type; \ + setter \ + } +MOVESET(std::string, string, u_.string_ = new std::string(std::move(_val));) +MOVESET(array, array, u_.array_ = new array(std::move(_val));) +MOVESET(object, object, u_.object_ = new object(std::move(_val));) +# undef MOVESET +# endif + +inline bool value::evaluate_as_boolean() const { + switch (type_) { + case null_type: return false; + case boolean_type: return u_.boolean_; + case number_type: return u_.number_ != 0; +# ifdef PICOJSON_USE_INT64 + case int64_type: return u_.int64_ != 0; +# endif + case string_type: return !u_.string_->empty(); + default: return true; + } +} + +inline const value& value::get(const size_t idx) const { + static value s_null; + PICOJSON_ASSERT(is()); + return idx < u_.array_->size() ? (*u_.array_)[idx] : s_null; +} + +inline value& value::get(const size_t idx) { + static value s_null; + PICOJSON_ASSERT(is()); + return idx < u_.array_->size() ? (*u_.array_)[idx] : s_null; +} + +inline const value& value::get(const std::string& key) const { + static value s_null; + PICOJSON_ASSERT(is()); + object::const_iterator i = u_.object_->find(key); + return i != u_.object_->end() ? i->second : s_null; +} + +inline value& value::get(const std::string& key) { + static value s_null; + PICOJSON_ASSERT(is()); + object::iterator i = u_.object_->find(key); + return i != u_.object_->end() ? i->second : s_null; +} + +inline bool value::contains(const size_t idx) const { + PICOJSON_ASSERT(is()); + return idx < u_.array_->size(); +} + +inline bool value::contains(const std::string& key) const { + PICOJSON_ASSERT(is()); + object::const_iterator i = u_.object_->find(key); + return i != u_.object_->end(); +} + +inline std::string value::to_str() const { + switch (type_) { + case null_type: return "null"; + case boolean_type: return u_.boolean_ ? "true" : "false"; +# ifdef PICOJSON_USE_INT64 + case int64_type: { + char buf[sizeof("-9223372036854775808")]; + SNPRINTF(buf, sizeof(buf), "%" PRId64, u_.int64_); + return buf; + } +# endif + case number_type: { + char buf[256]; + double tmp; + SNPRINTF(buf, sizeof(buf), fabs(u_.number_) < (1ULL << 53) && modf(u_.number_, &tmp) == 0 ? "%.f" : "%.17g", + u_.number_); +# if PICOJSON_USE_LOCALE + char* decimal_point = localeconv()->decimal_point; + if (strcmp(decimal_point, ".") != 0) { + size_t decimal_point_len = strlen(decimal_point); + for (char* p = buf; *p != '\0'; ++p) { + if (strncmp(p, decimal_point, decimal_point_len) == 0) { + return std::string(buf, p) + "." + (p + decimal_point_len); + } + } + } +# endif + return buf; + } + case string_type: return *u_.string_; + case array_type: return "array"; + case object_type: return "object"; + default: PICOJSON_ASSERT(0); +# ifdef _MSC_VER + __assume(0); +# endif + } + return std::string(); +} + +template +void copy(const std::string& s, Iter oi) { + std::copy(s.begin(), s.end(), oi); +} + +template +struct serialize_str_char { + Iter oi; + void operator()(char c) { + switch (c) { +# define MAP(val, sym) \ + case val: copy(sym, oi); break + MAP('"', "\\\""); + MAP('\\', "\\\\"); + MAP('/', "\\/"); + MAP('\b', "\\b"); + MAP('\f', "\\f"); + MAP('\n', "\\n"); + MAP('\r', "\\r"); + MAP('\t', "\\t"); +# undef MAP + default: + if (static_cast(c) < 0x20 || c == 0x7f) { + char buf[7]; + SNPRINTF(buf, sizeof(buf), "\\u%04x", c & 0xff); + copy(buf, buf + 6, oi); + } else { + *oi++ = c; + } + break; + } + } +}; + +template +void serialize_str(const std::string& s, Iter oi) { + *oi++ = '"'; + serialize_str_char process_char = { oi }; + std::for_each(s.begin(), s.end(), process_char); + *oi++ = '"'; +} + +template +void value::serialize(Iter oi, bool prettify) const { + return _serialize(oi, prettify ? 0 : -1); +} + +inline std::string value::serialize(bool prettify) const { return _serialize(prettify ? 0 : -1); } + +template +void value::_indent(Iter oi, int indent) { + *oi++ = '\n'; + for (int i = 0; i < indent * INDENT_WIDTH; ++i) { *oi++ = ' '; } +} + +template +void value::_serialize(Iter oi, int indent) const { + switch (type_) { + case string_type: serialize_str(*u_.string_, oi); break; + case array_type: { + *oi++ = '['; + if (indent != -1) { + ++indent; + } + for (array::const_iterator i = u_.array_->begin(); i != u_.array_->end(); ++i) { + if (i != u_.array_->begin()) { + *oi++ = ','; + } + if (indent != -1) { + _indent(oi, indent); + } + i->_serialize(oi, indent); + } + if (indent != -1) { + --indent; + if (!u_.array_->empty()) { + _indent(oi, indent); + } + } + *oi++ = ']'; + break; + } + case object_type: { + *oi++ = '{'; + if (indent != -1) { + ++indent; + } + for (object::const_iterator i = u_.object_->begin(); i != u_.object_->end(); ++i) { + if (i != u_.object_->begin()) { + *oi++ = ','; + } + if (indent != -1) { + _indent(oi, indent); + } + serialize_str(i->first, oi); + *oi++ = ':'; + if (indent != -1) { + *oi++ = ' '; + } + i->second._serialize(oi, indent); + } + if (indent != -1) { + --indent; + if (!u_.object_->empty()) { + _indent(oi, indent); + } + } + *oi++ = '}'; + break; + } + default: copy(to_str(), oi); break; + } + if (indent == 0) { + *oi++ = '\n'; + } +} + +inline std::string value::_serialize(int indent) const { + std::string s; + _serialize(std::back_inserter(s), indent); + return s; +} + +template +class input { + protected: + Iter cur_, end_; + bool consumed_; + int line_; + + public: + input(const Iter& first, const Iter& last) : cur_(first), end_(last), consumed_(false), line_(1) {} + int getc() { + if (consumed_) { + if (*cur_ == '\n') { + ++line_; + } + ++cur_; + } + if (cur_ == end_) { + consumed_ = false; + return -1; + } + consumed_ = true; + return *cur_ & 0xff; + } + void ungetc() { consumed_ = false; } + Iter cur() const { + if (consumed_) { + input* self = const_cast*>(this); + self->consumed_ = false; + ++self->cur_; + } + return cur_; + } + int line() const { return line_; } + void skip_ws() { + while (1) { + int ch = getc(); + if (!(ch == ' ' || ch == '\t' || ch == '\n' || ch == '\r')) { + ungetc(); + break; + } + } + } + bool expect(const int expected) { + skip_ws(); + if (getc() != expected) { + ungetc(); + return false; + } + return true; + } + bool match(const std::string& pattern) { + for (std::string::const_iterator pi(pattern.begin()); pi != pattern.end(); ++pi) { + if (getc() != *pi) { + ungetc(); + return false; + } + } + return true; + } +}; + +template +inline int _parse_quadhex(input& in) { + int uni_ch = 0, hex; + for (int i = 0; i < 4; i++) { + if ((hex = in.getc()) == -1) { + return -1; + } + if ('0' <= hex && hex <= '9') { + hex -= '0'; + } else if ('A' <= hex && hex <= 'F') { + hex -= 'A' - 0xa; + } else if ('a' <= hex && hex <= 'f') { + hex -= 'a' - 0xa; + } else { + in.ungetc(); + return -1; + } + uni_ch = uni_ch * 16 + hex; + } + return uni_ch; +} + +template +inline bool _parse_codepoint(String& out, input& in) { + int uni_ch; + if ((uni_ch = _parse_quadhex(in)) == -1) { + return false; + } + if (0xd800 <= uni_ch && uni_ch <= 0xdfff) { + if (0xdc00 <= uni_ch) { + // a second 16-bit of a surrogate pair appeared + return false; + } + // first 16-bit of surrogate pair, get the next one + if (in.getc() != '\\' || in.getc() != 'u') { + in.ungetc(); + return false; + } + int second = _parse_quadhex(in); + if (!(0xdc00 <= second && second <= 0xdfff)) { + return false; + } + uni_ch = ((uni_ch - 0xd800) << 10) | ((second - 0xdc00) & 0x3ff); + uni_ch += 0x10000; + } + if (uni_ch < 0x80) { + out.push_back(static_cast(uni_ch)); + } else { + if (uni_ch < 0x800) { + out.push_back(static_cast(0xc0 | (uni_ch >> 6))); + } else { + if (uni_ch < 0x10000) { + out.push_back(static_cast(0xe0 | (uni_ch >> 12))); + } else { + out.push_back(static_cast(0xf0 | (uni_ch >> 18))); + out.push_back(static_cast(0x80 | ((uni_ch >> 12) & 0x3f))); + } + out.push_back(static_cast(0x80 | ((uni_ch >> 6) & 0x3f))); + } + out.push_back(static_cast(0x80 | (uni_ch & 0x3f))); + } + return true; +} + +template +inline bool _parse_string(String& out, input& in) { + while (1) { + int ch = in.getc(); + if (ch < ' ') { + in.ungetc(); + return false; + } else if (ch == '"') { + return true; + } else if (ch == '\\') { + if ((ch = in.getc()) == -1) { + return false; + } + switch (ch) { +# define MAP(sym, val) \ + case sym: out.push_back(val); break + MAP('"', '\"'); + MAP('\\', '\\'); + MAP('/', '/'); + MAP('b', '\b'); + MAP('f', '\f'); + MAP('n', '\n'); + MAP('r', '\r'); + MAP('t', '\t'); +# undef MAP + case 'u': + if (!_parse_codepoint(out, in)) { + return false; + } + break; + default: return false; + } + } else { + out.push_back(static_cast(ch)); + } + } + return false; +} + +template +inline bool _parse_array(Context& ctx, input& in) { + if (!ctx.parse_array_start()) { + return false; + } + size_t idx = 0; + if (in.expect(']')) { + return ctx.parse_array_stop(idx); + } + do { + if (!ctx.parse_array_item(in, idx)) { + return false; + } + idx++; + } while (in.expect(',')); + return in.expect(']') && ctx.parse_array_stop(idx); +} + +template +inline bool _parse_object(Context& ctx, input& in) { + if (!ctx.parse_object_start()) { + return false; + } + if (in.expect('}')) { + return true; + } + do { + std::string key; + if (!in.expect('"') || !_parse_string(key, in) || !in.expect(':')) { + return false; + } + if (!ctx.parse_object_item(in, key)) { + return false; + } + } while (in.expect(',')); + return in.expect('}'); +} + +template +inline std::string _parse_number(input& in) { + std::string num_str; + while (1) { + int ch = in.getc(); + if (('0' <= ch && ch <= '9') || ch == '+' || ch == '-' || ch == 'e' || ch == 'E') { + num_str.push_back(static_cast(ch)); + } else if (ch == '.') { +# if PICOJSON_USE_LOCALE + num_str += localeconv()->decimal_point; +# else + num_str.push_back('.'); +# endif + } else { + in.ungetc(); + break; + } + } + return num_str; +} + +template +inline bool _parse(Context& ctx, input& in) { + in.skip_ws(); + int ch = in.getc(); + switch (ch) { +# define IS(ch, text, op) \ + case ch: \ + if (in.match(text) && op) { \ + return true; \ + } else { \ + return false; \ + } + IS('n', "ull", ctx.set_null()); + IS('f', "alse", ctx.set_bool(false)); + IS('t', "rue", ctx.set_bool(true)); +# undef IS + case '"': return ctx.parse_string(in); + case '[': return _parse_array(ctx, in); + case '{': return _parse_object(ctx, in); + default: + if (('0' <= ch && ch <= '9') || ch == '-') { + double f; + char* endp; + in.ungetc(); + std::string num_str(_parse_number(in)); + if (num_str.empty()) { + return false; + } +# ifdef PICOJSON_USE_INT64 + { + errno = 0; + intmax_t ival = strtoimax(num_str.c_str(), &endp, 10); + if (errno == 0 && std::numeric_limits::min() <= ival && + ival <= std::numeric_limits::max() && endp == num_str.c_str() + num_str.size()) { + ctx.set_int64(ival); + return true; + } + } +# endif + f = strtod(num_str.c_str(), &endp); + if (endp == num_str.c_str() + num_str.size()) { + ctx.set_number(f); + return true; + } + return false; + } + break; + } + in.ungetc(); + return false; +} + +class deny_parse_context { + public: + bool set_null() { return false; } + bool set_bool(bool) { return false; } +# ifdef PICOJSON_USE_INT64 + bool set_int64(int64_t) { return false; } +# endif + bool set_number(double) { return false; } + template + bool parse_string(input&) { + return false; + } + bool parse_array_start() { return false; } + template + bool parse_array_item(input&, size_t) { + return false; + } + bool parse_array_stop(size_t) { return false; } + bool parse_object_start() { return false; } + template + bool parse_object_item(input&, const std::string&) { + return false; + } +}; + +class default_parse_context { + protected: + value* out_; + + public: + default_parse_context(value* out) : out_(out) {} + bool set_null() { + *out_ = value(); + return true; + } + bool set_bool(bool b) { + *out_ = value(b); + return true; + } +# ifdef PICOJSON_USE_INT64 + bool set_int64(int64_t i) { + *out_ = value(i); + return true; + } +# endif + bool set_number(double f) { + *out_ = value(f); + return true; + } + template + bool parse_string(input& in) { + *out_ = value(string_type, false); + return _parse_string(out_->get(), in); + } + bool parse_array_start() { + *out_ = value(array_type, false); + return true; + } + template + bool parse_array_item(input& in, size_t) { + array& a = out_->get(); + a.push_back(value()); + default_parse_context ctx(&a.back()); + return _parse(ctx, in); + } + bool parse_array_stop(size_t) { return true; } + bool parse_object_start() { + *out_ = value(object_type, false); + return true; + } + template + bool parse_object_item(input& in, const std::string& key) { + object& o = out_->get(); + default_parse_context ctx(&o[key]); + return _parse(ctx, in); + } + + private: + default_parse_context(const default_parse_context&); + default_parse_context& operator=(const default_parse_context&); +}; + +class null_parse_context { + public: + struct dummy_str { + void push_back(int) {} + }; + + public: + null_parse_context() {} + bool set_null() { return true; } + bool set_bool(bool) { return true; } +# ifdef PICOJSON_USE_INT64 + bool set_int64(int64_t) { return true; } +# endif + bool set_number(double) { return true; } + template + bool parse_string(input& in) { + dummy_str s; + return _parse_string(s, in); + } + bool parse_array_start() { return true; } + template + bool parse_array_item(input& in, size_t) { + return _parse(*this, in); + } + bool parse_array_stop(size_t) { return true; } + bool parse_object_start() { return true; } + template + bool parse_object_item(input& in, const std::string&) { + return _parse(*this, in); + } + + private: + null_parse_context(const null_parse_context&); + null_parse_context& operator=(const null_parse_context&); +}; + +// obsolete, use the version below +template +inline std::string parse(value& out, Iter& pos, const Iter& last) { + std::string err; + pos = parse(out, pos, last, &err); + return err; +} + +template +inline Iter _parse(Context& ctx, const Iter& first, const Iter& last, std::string* err) { + input in(first, last); + if (!_parse(ctx, in) && err != NULL) { + char buf[64]; + SNPRINTF(buf, sizeof(buf), "syntax error at line %d near: ", in.line()); + *err = buf; + while (1) { + int ch = in.getc(); + if (ch == -1 || ch == '\n') { + break; + } else if (ch >= ' ') { + err->push_back(static_cast(ch)); + } + } + } + return in.cur(); +} + +template +inline Iter parse(value& out, const Iter& first, const Iter& last, std::string* err) { + default_parse_context ctx(&out); + return _parse(ctx, first, last, err); +} + +inline std::string parse(value& out, const std::string& s) { + std::string err; + parse(out, s.begin(), s.end(), &err); + return err; +} + +inline std::string parse(value& out, std::istream& is) { + std::string err; + parse(out, std::istreambuf_iterator(is.rdbuf()), std::istreambuf_iterator(), &err); + return err; +} + +template +struct last_error_t { + static std::string s; +}; +template +std::string last_error_t::s; + +inline void set_last_error(const std::string& s) { last_error_t::s = s; } + +inline const std::string& get_last_error() { return last_error_t::s; } + +inline bool operator==(const value& x, const value& y) { + if (x.is()) + return y.is(); +# define PICOJSON_CMP(type) \ + if (x.is()) \ + return y.is() && x.get() == y.get() + PICOJSON_CMP(bool); + PICOJSON_CMP(double); + PICOJSON_CMP(std::string); + PICOJSON_CMP(array); + PICOJSON_CMP(object); +# undef PICOJSON_CMP + PICOJSON_ASSERT(0); +# ifdef _MSC_VER + __assume(0); +# endif + return false; +} + +inline bool operator!=(const value& x, const value& y) { return !(x == y); } +} // namespace picojson + +# if !PICOJSON_USE_RVALUE_REFERENCE +namespace std { +template <> +inline void swap(picojson::value& x, picojson::value& y) { + x.swap(y); +} +} // namespace std +# endif + +inline std::istream& operator>>(std::istream& is, picojson::value& x) { + picojson::set_last_error(std::string()); + const std::string err(picojson::parse(x, is)); + if (!err.empty()) { + picojson::set_last_error(err); + is.setstate(std::ios::failbit); + } + return is; +} + +inline std::ostream& operator<<(std::ostream& os, const picojson::value& x) { + x.serialize(std::ostream_iterator(os)); + return os; +} +# ifdef _MSC_VER +# pragma warning(pop) +# endif + +#endif \ No newline at end of file diff --git a/wasm-spec-tests/generator/regexes.py b/wasm-spec-tests/generator/regexes.py new file mode 100644 index 0000000000..1e18ebc684 --- /dev/null +++ b/wasm-spec-tests/generator/regexes.py @@ -0,0 +1,11 @@ +TYPE_REGEX = r'(\(type \(;)([0-9]+)(.*)' +FUNC_REGEX = r'(\(func \(;)([0-9]+)(;\) \(type )([0-9]+)(.*)' +CALL_REGEX = r'(call )([0-9]+)(.*)' +CALL_INDIRECT_REGEX = r'(call_indirect \(type )([0-9]+)(.*)' +EXPORT_REGEX = r'(\(export ")([\w\-\.]+)(" \(func )([0-9]+)(.*)' +ELEM_REGEX = r'(\(elem \(i32.const 0\) )([0-9\s]+)(.*)' +IMPORT_REGEX = r'(\(import ")([\w]+)(" ")([\w]+)(" \(func \(;)([0-9]+)(;\) \(type )([0-9]+)(.*)' +GLOBAL_REGEX = r'(\(global \(;)([0-9]+)(.*)' +GET_SET_GLOBAL_REGEX = r'(\w+_global )([0-9]+)(.*)' +START_REGEX = r'(start )([0-9]+)(.*)' +DATA_REGEX = r'(\(data \(i32.const )([0-9]+)(.*)' diff --git a/wasm-spec-tests/generator/setup_eosio_tests.py b/wasm-spec-tests/generator/setup_eosio_tests.py new file mode 100644 index 0000000000..2d10287794 --- /dev/null +++ b/wasm-spec-tests/generator/setup_eosio_tests.py @@ -0,0 +1,202 @@ +#!/usr/bin/env python3 +from multiprocessing import Pool +from pathlib import Path + +import os +import shutil +import subprocess +import sys +import tempfile + +from compile_tests import CompileError + +import compile_tests +import generate_eosio_tests + +WASM_DIR = '' +TEST_DIR = '' +OUT_DIR = '' +GENERATOR_DIR = '' +REPO_ROOT = '' +ALTERED_WASMS_DIR = '' + +generator = '' + +test_failures = [] + + +def main(): + json_files = sorted(list(filter(lambda x: x.find('json') > -1, os.listdir(WASM_DIR)))) + try: + os.mkdir(OUT_DIR) + except Exception: + pass + + for j in json_files: + setup_tests(j) + + if test_failures: + print('The following errors occurred:') + for t in test_failures: + print(t) + +def get_altered_wasms(): + aws = {} + for d in os.listdir(ALTERED_WASMS_DIR): + for f in os.listdir(os.path.join(ALTERED_WASMS_DIR, d)): + if f.find('.wasm') > -1: + aws[f] = True + return aws + + + +def setup_tests(j): + dir_name = j.split('.')[0] + new_dir = os.path.join(OUT_DIR, dir_name) + json_file = os.path.join(WASM_DIR, j) + + _cwd = os.getcwd() + + os.mkdir(new_dir) + os.chdir(new_dir) + + out = subprocess.run([generator, json_file], capture_output=True) + out.check_returncode() + + mkdirs() + copy(dir_name) + compile_wasm() + generate_wasm_and_copy() + copy_cpp() + + os.chdir(_cwd) + + +def mkdirs(): + new_dirs = [] + for f in os.listdir(): + num = f.split('.')[1] + if num.isdigit(): + new_dirs.append(num) + + for d in set(new_dirs): + os.mkdir(str(d)) + + for f in os.listdir(): + if not os.path.isdir(f): + num = f.split('.')[1] + if num.isdigit(): + os.rename(f, os.path.join(num, f)) + + +def copy(dir_name): + for d in os.listdir(): + if d.isdigit(): + shutil.copy( + os.path.join(WASM_DIR, f'{dir_name}.{d}.wasm'), + os.path.join(os.getcwd(), d, 'test.wasm') + ) + + +def compile_wasm(): + cwd = os.getcwd() + name = cwd.split('/')[-1] + fs = os.listdir() + + fs = list(filter(lambda x: os.path.isdir(x), fs)) + fs_m = map(lambda x: (x, name), fs) + + # If there's a lot of files, break out and process in parallel. + # Otherwise, we can just do serially. + if len(fs) > 5: + with Pool(os.cpu_count() - 2) as p: + p.map(compile_eosio, fs_m) + else: + for d in fs_m: + compile_eosio(d) + +def compile_eosio(f): + d, name = f + compile_tests.main( + d, + f'{name}.{d}.wasm.cpp', + f'{name}.{d}-int.wasm', + ) + + +def generate_wasm_and_copy(): + cwd = os.getcwd() + name = cwd.split('/')[-1] + altered_wasms = get_altered_wasms() + for d in os.listdir(): + if not d.isdigit(): + continue + + wasm_file = f'{name}.{d}.wasm' + if wasm_file in altered_wasms: + wasm_file_path = os.path.join(ALTERED_WASMS_DIR, name, wasm_file) + else: + g_wasm_file = os.path.join(d, f'{name}.{d}-int.wasm') + t_wasm_file = os.path.join(d, 'test.wasm') + o_wast_file = os.path.join(d, f'{name}.{d}.wast') + map_file = os.path.join(d, f'{name}.{d}.wasm.map') + try: + generate_eosio_tests.main(g_wasm_file, t_wasm_file, o_wast_file, map_file) + wasm_file_path = os.path.join(d, wasm_file) + out = subprocess.run( + ['eosio-wast2wasm', o_wast_file, '-o', os.path.join(d, wasm_file)], + capture_output=True + ) + + if out.returncode > 0: + n = (' '.join(map_file.split('.')[0:2])).split('/')[1] + raise CompileError(f'Error converting {n} to wasm') + except CompileError as e: + test_failures.append(str(e)) + continue + + shutil.copy(wasm_file_path, os.path.join(TEST_DIR, 'wasms', wasm_file)) + + +def copy_cpp(): + cwd = os.getcwd() + name = cwd.split('/')[-1] + cpp_file = f'{name}.cpp' + try: + shutil.copy(cpp_file, os.path.join(TEST_DIR, cpp_file)) + except FileNotFoundError: + # This occurs when a test suite is all `assert_malformed` or other tests we don't test. + pass + +if __name__ == '__main__': + if len(sys.argv) < 2: + print("""Please provide: + Arg 1: Directory containing test wasms + (optional) Arg 2: Directory to output results to + (optional) Arg 3: Directory for intermediate test files + + ex: + python setup_eosio_tests.py ~/code/eos-vm-test-wasms ~/code/eos ~/wasm_spec_tests + """) + sys.exit(1) + + REPO_ROOT = Path(os.path.realpath(__file__)).parent.parent + + WASM_DIR = sys.argv[1] + if len(sys.argv) > 2: + TEST_DIR = sys.argv[2] + else: + TEST_DIR = os.path.join(REPO_ROOT, 'generated-tests') + if len(sys.argv) > 3: + OUT_DIR = sys.argv[3] + else: + OUT_DIR = tempfile.mkdtemp() + + print(f'Temporary files will be saved in {OUT_DIR}') + + GENERATOR_DIR = os.path.join(REPO_ROOT, 'build', 'generator') + ALTERED_WASMS_DIR = os.path.join(REPO_ROOT, 'generator', 'altered-wasms') + + generator = os.path.join(GENERATOR_DIR, 'eosio_test_generator') + + main() diff --git a/wasm-spec-tests/generator/test_wasm.py b/wasm-spec-tests/generator/test_wasm.py new file mode 100644 index 0000000000..710d38c17f --- /dev/null +++ b/wasm-spec-tests/generator/test_wasm.py @@ -0,0 +1,187 @@ +import re + +from regexes import ( + CALL_REGEX, CALL_INDIRECT_REGEX, + ELEM_REGEX, EXPORT_REGEX, + FUNC_REGEX, GLOBAL_REGEX, + IMPORT_REGEX, START_REGEX, TYPE_REGEX +) +from wasm import WASM + +class TestWASM(WASM): + def __init__(self): + super(TestWASM, self).__init__() + + def shift_types(self, max_type): + type_map = {} + new_types = [] + for t in self.types: + match = re.search(TYPE_REGEX, t) + + type_num = match.group(2) + new_type_num = int(type_num) + int(max_type) + 1 + type_map[type_num] = new_type_num + + new_type = re.sub(TYPE_REGEX, lambda x: f'{x.group(1)}{new_type_num}{x.group(3)}', t) + new_types.append(new_type) + + self.types = new_types + return type_map + + def shift_imports(self, type_map, max_import): + new_imports = [] + for i in self.imports: + m = re.search(IMPORT_REGEX, i) + + type_num = m.group(8) + new_type_num = type_map[type_num] + + func_num = m.group(6) + new_func_num = int(max_import) + 1 + self.function_symbol_map[func_num] = new_func_num + + sub_func = lambda x: f'{m.group(1)}{m.group(2)}{m.group(3)}{m.group(4)}{m.group(5)}{new_func_num}{m.group(7)}{new_type_num}{m.group(9)}' + new_import = re.sub(IMPORT_REGEX, sub_func, i) + new_imports.append(new_import) + + max_import = int(max_import) + 1 + + self.imports = new_imports + return max_import + + def shift_funcs(self, type_map, max_func_num): + def get_type_num(f): + return re.search(FUNC_REGEX, f).group(4) + + def get_func_num(f): + return re.search(FUNC_REGEX, f).group(2) + + def inject_new_type_num(f, new_type_num): + sub_func = lambda x: f'{x.group(1)}{x.group(2)}{x.group(3)}{new_type_num}{x.group(5)}' + return re.sub(FUNC_REGEX, sub_func, f) + + def inject_new_func_num(f, new_func_num): + sub_func = lambda x: f'{x.group(1)}{new_func_num}{x.group(3)}{x.group(4)}{x.group(5)}' + return re.sub(FUNC_REGEX, sub_func, f) + + new_funcs = [] + for f in self.funcs: + type_num = get_type_num(f) + new_type_num = type_map[type_num] + + func_num = get_func_num(f) + new_func_num = int(max_func_num) + 1 + + self.function_symbol_map[func_num] = new_func_num + + max_func_num = new_func_num + + new_func = inject_new_func_num(f, new_func_num) + new_func = inject_new_type_num(new_func, new_type_num) + + new_funcs.append(new_func) + + self.funcs = new_funcs + + return max_func_num + + def shift_calls(self, type_map): + new_funcs = [] + for f in self.funcs: + func = '' + for l in f.split('\n'): + if re.search(CALL_INDIRECT_REGEX, l): + func += self.shift_call_indirect(l, type_map) + '\n' + elif re.search(CALL_REGEX, l): + func += self.shift_call(l) + '\n' + else: + func += l + '\n' + + new_funcs.append(func) + + self.funcs = new_funcs + + def shift_call(self, line): + match = re.search(CALL_REGEX, line) + func_num = match.group(2) + + new_num = self.function_symbol_map[func_num] + new_call = re.sub(CALL_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', line) + + return new_call + + def shift_call_indirect(self, line, type_map): + match = re.search(CALL_INDIRECT_REGEX, line) + type_num = match.group(2) + new_num = type_map[type_num] + + new_call = re.sub(CALL_INDIRECT_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', line) + + return new_call + + def shift_start(self): + if self.start: + match = re.search(START_REGEX, self.start) + func_num = match.group(2) + + new_num = self.function_symbol_map[func_num] + new_start = re.sub(START_REGEX, lambda x: f'{x.group(1)}{new_num}{x.group(3)}', self.start) + + self.start = new_start + + + def shift_exports(self): + def get_func_num(f): + return re.search(EXPORT_REGEX, f).group(4) + + def inject_new_func_num(f, new_func_num): + return re.sub(EXPORT_REGEX, lambda x: f'{x.group(1)}{x.group(2)}{x.group(3)}{new_func_num}{x.group(5)}', f) + + def normalize(val): + ret_val = '_' + for i in range(0, len(val)): + ret_val += '_' if val[i] == '-' or val[i] == '.' else val[i] + + return ret_val + + new_exports = [] + exports_map = {} + for e in self.exports: + if e.find('(func ') > -1: + func_num = get_func_num(e) + new_func_num = self.function_symbol_map[func_num] + + new_export = inject_new_func_num(e, new_func_num) + + new_exports.append(new_export) + else: + new_exports.append(e) + + exports_map[normalize(re.search(EXPORT_REGEX, e).group(2))] = new_func_num + self.exports = new_exports + return exports_map + + def shift_elems(self): + new_elems = [] + for e in self.elems: + match = re.search(ELEM_REGEX, e) + new_numbers = [] + if match: + numbers = match.group(2) + for n in numbers.split(): + shifted_num = self.function_symbol_map[n] + new_numbers.append(str(shifted_num)) + + new_numbers_str = ' '.join(new_numbers) + sub_func = lambda x: f'{x.group(1)}{new_numbers_str}{x.group(3)}' + new_elems.append(re.sub(ELEM_REGEX, sub_func, e)) + + self.elems = new_elems + + def get_max_global(self): + max_global_var = -1 + for g in self.global_vars: + match = re.search(GLOBAL_REGEX, g) + max_global_var = match.group(2) + + return max_global_var diff --git a/wasm-spec-tests/generator/wasm.py b/wasm-spec-tests/generator/wasm.py new file mode 100644 index 0000000000..ef618df965 --- /dev/null +++ b/wasm-spec-tests/generator/wasm.py @@ -0,0 +1,106 @@ +import re + +from regexes import FUNC_REGEX, IMPORT_REGEX, TYPE_REGEX + +from lookahead import LookAhead + +class WASM(object): + def __init__(self): + self.types = [] + self.imports = [] + self.funcs = [] + self.tables = [] + self.memory = [] + self.global_vars = [] + self.exports = [] + self.data = [] + self.elems = [] + self.start = '' + + self.max_type = -1 + self.max_import = 0 + + self.function_symbol_map = {} + + def read_wasm(self, wast_string): + lines = wast_string.split('\n') + last_line = lines[-2][0:-1] # strip the trailing parentheses off. + new_lines = lines[0:-2] + new_lines.extend([last_line, '']) + la_lines = LookAhead(new_lines) + + next(la_lines) # Skip the "module" line + + while la_lines: + peek = la_lines.peek + + if re.search(TYPE_REGEX, peek): + self.get_type(peek) + next(la_lines) + elif re.search(IMPORT_REGEX, peek): + self.get_imports(peek) + next(la_lines) + elif re.search(FUNC_REGEX, peek): + la_lines = self.get_funcs(la_lines) + elif la_lines.peek.find('(table (;') > -1: + self.tables.append(peek) + next(la_lines) + elif la_lines.peek.find('(memory (;') > -1: + self.memory.append(peek) + next(la_lines) + elif la_lines.peek.find('(global (;') > -1: + self.global_vars.append(peek) + next(la_lines) + elif la_lines.peek.find('(export ') > -1: + self.exports.append(peek) + next(la_lines) + elif la_lines.peek.find('(data ') > -1: + self.data.append(peek) + next(la_lines) + elif la_lines.peek.find('(elem ') > -1: + self.elems.append(peek) + next(la_lines) + elif la_lines.peek.find('(start ') > -1: + self.start = peek + next(la_lines) + else: + next(la_lines) + + def get_type(self, line): + type_num = int(re.search(TYPE_REGEX, line).group(2)) + + if type_num > self.max_type: + self.max_type = type_num + + self.types.append(line) + + def get_imports(self, line): + import_num = int(re.search(IMPORT_REGEX, line).group(6)) + + if import_num > self.max_import: + self.max_import = import_num + + self.imports.append(line) + + def get_funcs(self, lines): + func = lines.peek + next(lines) + while lines.peek and not non_func(lines.peek) and not re.search(FUNC_REGEX, lines.peek): + func += '\n' + lines.peek + next(lines) + self.funcs.append(func) + + return lines + + +def non_func(line): + blacklist = ['table', 'memory', 'global'] + blacklist_2 = ['export', 'data', 'elem', 'start'] + for b in blacklist: + if line.find(f'({b} (;') > -1: + return True + for b in blacklist_2: + if line.find(f'({b} ') > -1: + return True + + return False From 457b12da9111d1bc12a0c7eabe8621cd0348d0c1 Mon Sep 17 00:00:00 2001 From: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com> Date: Tue, 6 Sep 2022 20:22:10 -0400 Subject: [PATCH 2/4] tweaks to CMakeLists & removal of discrete LICENSE now that desubmoduled --- wasm-spec-tests/CMakeLists.txt | 24 -------------------- wasm-spec-tests/LICENSE | 28 ------------------------ wasm-spec-tests/README.md | 6 +---- wasm-spec-tests/generator/CMakeLists.txt | 23 +++++++++++++++++++ 4 files changed, 24 insertions(+), 57 deletions(-) delete mode 100644 wasm-spec-tests/CMakeLists.txt delete mode 100644 wasm-spec-tests/LICENSE diff --git a/wasm-spec-tests/CMakeLists.txt b/wasm-spec-tests/CMakeLists.txt deleted file mode 100644 index bbc0373bcc..0000000000 --- a/wasm-spec-tests/CMakeLists.txt +++ /dev/null @@ -1,24 +0,0 @@ -# ################################################################################################## -# Defines the eosio-wasm-spec-tests generator and generated tests -# ################################################################################################## -cmake_minimum_required(VERSION 3.8) -set(VERSION_MAJOR 0) -set(VERSION_MINOR 0) -set(VERSION_PATCH 1) -project(eos-wasm-spec-tests VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) - -if (VERSION_SUFFIX) - set(VERSION_FULL "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}-${VERSION_SUFFIX}") -else() - set(VERSION_FULL "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") -endif() - -message(STATUS "Building eos-wasm-spec-tests v${VERSION_FULL}...") - -option(WASM_SPEC_TESTS "Build WASM Spec Tests" OFF) - -set(CMAKE_CXX_STANDARD 17) -set(CMAKE_CXX_EXTENSIONS ON) -set(CMAKE_EXPORT_COMPILE_COMMANDS ON) - -add_subdirectory(generator) diff --git a/wasm-spec-tests/LICENSE b/wasm-spec-tests/LICENSE deleted file mode 100644 index cbc888e2c3..0000000000 --- a/wasm-spec-tests/LICENSE +++ /dev/null @@ -1,28 +0,0 @@ -AntelopeIO/wasm-spec-tests - -Copyright (c) 2021-2022 EOS Network Foundation (ENF) and its contributors. All rights reserved. -This ENF software is based upon: - -EOSIO/eosio-wasm-spect-tests - -Copyright (c) 2019 block.one and its contributors. All rights reserved. - -The MIT License - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/wasm-spec-tests/README.md b/wasm-spec-tests/README.md index eeaaaed74e..9c378c6ec6 100644 --- a/wasm-spec-tests/README.md +++ b/wasm-spec-tests/README.md @@ -1,6 +1,6 @@ # WASM Spec Tests -This repo provides a set of unit tests that can be used to check a WASM Backend's conformance to the +This directory provides a set of unit tests that can be used to check a WASM Backend's conformance to the WebAssembly spec. ## Tests @@ -54,7 +54,3 @@ WebAssembly spec. - globals.14 -- Delete from generated tests or it segfaults due to missing wasm. - Imports "global_i32" from "spectest". - Unclear what an appropriate substition would be. - -## License - -[MIT](./LICENSE) diff --git a/wasm-spec-tests/generator/CMakeLists.txt b/wasm-spec-tests/generator/CMakeLists.txt index 30b4cff2d2..fb0b026e83 100644 --- a/wasm-spec-tests/generator/CMakeLists.txt +++ b/wasm-spec-tests/generator/CMakeLists.txt @@ -1,3 +1,26 @@ +# ################################################################################################## +# Defines the eosio-wasm-spec-tests generator and generated tests +# ################################################################################################## +cmake_minimum_required(VERSION 3.8) +set(VERSION_MAJOR 0) +set(VERSION_MINOR 0) +set(VERSION_PATCH 1) +project(eos-wasm-spec-tests VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) + +if (VERSION_SUFFIX) + set(VERSION_FULL "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}-${VERSION_SUFFIX}") +else() + set(VERSION_FULL "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") +endif() + +message(STATUS "Building eos-wasm-spec-tests v${VERSION_FULL}...") + +option(WASM_SPEC_TESTS "Build WASM Spec Tests" OFF) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_EXTENSIONS ON) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + enable_testing() add_executable( eosio_test_generator ${CMAKE_CURRENT_SOURCE_DIR}/eosio_test_generator.cpp ${CMAKE_CURRENT_SOURCE_DIR}/eosio_wasm_spec_test_generator.cpp) From 758a033c63a16db370b23b53c7f8634ec12909da Mon Sep 17 00:00:00 2001 From: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com> Date: Tue, 13 Sep 2022 12:10:10 -0400 Subject: [PATCH 3/4] no longer need submodules during test --- .github/workflows/build.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 4df01cf178..b3da5ee349 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -130,8 +130,6 @@ jobs: container: ${{fromJSON(needs.d.outputs.p)[matrix.platform].image}} steps: - uses: actions/checkout@v3 - with: - submodules: true - name: Download builddir uses: actions/download-artifact@v3 with: From b7bb2d3e94250a7e128d94e6b9deff3af26fce9c Mon Sep 17 00:00:00 2001 From: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com> Date: Tue, 13 Sep 2022 12:14:20 -0400 Subject: [PATCH 4/4] move wasm-spec-tests to unittest directory --- CMakeLists.txt | 4 ---- unittests/CMakeLists.txt | 4 ++++ .../wasm-spec-tests}/README.md | 0 .../wasm-spec-tests}/generated-tests/CMakeLists.txt | 0 .../wasm-spec-tests}/generated-tests/address.cpp | 0 .../wasm-spec-tests}/generated-tests/align.cpp | 0 .../generated-tests/binary-leb128.cpp | 0 .../wasm-spec-tests}/generated-tests/binary.cpp | 0 .../wasm-spec-tests}/generated-tests/block.cpp | 0 .../wasm-spec-tests}/generated-tests/br.cpp | 0 .../wasm-spec-tests}/generated-tests/br_if.cpp | 0 .../wasm-spec-tests}/generated-tests/br_table.cpp | 0 .../wasm-spec-tests}/generated-tests/break-drop.cpp | 0 .../wasm-spec-tests}/generated-tests/call.cpp | 0 .../generated-tests/call_indirect.cpp | 0 .../wasm-spec-tests}/generated-tests/const.cpp | 0 .../generated-tests/conversions.cpp | 0 .../wasm-spec-tests}/generated-tests/custom.cpp | 0 .../wasm-spec-tests}/generated-tests/endianness.cpp | 0 .../wasm-spec-tests}/generated-tests/f32.cpp | 0 .../generated-tests/f32_bitwise.cpp | 0 .../wasm-spec-tests}/generated-tests/f32_cmp.cpp | 0 .../wasm-spec-tests}/generated-tests/f64.cpp | 0 .../generated-tests/f64_bitwise.cpp | 0 .../wasm-spec-tests}/generated-tests/f64_cmp.cpp | 0 .../wasm-spec-tests}/generated-tests/fac.cpp | 0 .../generated-tests/float_exprs.cpp | 0 .../generated-tests/float_literals.cpp | 0 .../generated-tests/float_memory.cpp | 0 .../wasm-spec-tests}/generated-tests/float_misc.cpp | 0 .../wasm-spec-tests}/generated-tests/forward.cpp | 0 .../wasm-spec-tests}/generated-tests/func.cpp | 0 .../wasm-spec-tests}/generated-tests/func_ptrs.cpp | 0 .../wasm-spec-tests}/generated-tests/globals.cpp | 0 .../wasm-spec-tests}/generated-tests/i32.cpp | 0 .../wasm-spec-tests}/generated-tests/i64.cpp | 0 .../wasm-spec-tests}/generated-tests/if.cpp | 0 .../wasm-spec-tests}/generated-tests/int_exprs.cpp | 0 .../generated-tests/int_literals.cpp | 0 .../wasm-spec-tests}/generated-tests/labels.cpp | 0 .../generated-tests/left-to-right.cpp | 0 .../wasm-spec-tests}/generated-tests/load.cpp | 0 .../wasm-spec-tests}/generated-tests/local_get.cpp | 0 .../wasm-spec-tests}/generated-tests/local_set.cpp | 0 .../wasm-spec-tests}/generated-tests/local_tee.cpp | 0 .../wasm-spec-tests}/generated-tests/loop.cpp | 0 .../wasm-spec-tests}/generated-tests/main.cpp | 0 .../wasm-spec-tests}/generated-tests/memory.cpp | 0 .../generated-tests/memory_grow.cpp | 0 .../generated-tests/memory_redundancy.cpp | 0 .../generated-tests/memory_size.cpp | 0 .../generated-tests/memory_trap.cpp | 0 .../wasm-spec-tests}/generated-tests/nop.cpp | 0 .../wasm-spec-tests}/generated-tests/return.cpp | 0 .../wasm-spec-tests}/generated-tests/select.cpp | 0 .../wasm-spec-tests}/generated-tests/stack.cpp | 0 .../wasm-spec-tests}/generated-tests/start.cpp | 0 .../wasm-spec-tests}/generated-tests/store.cpp | 0 .../wasm-spec-tests}/generated-tests/switch.cpp | 0 .../wasm-spec-tests}/generated-tests/traps.cpp | 0 .../wasm-spec-tests}/generated-tests/type.cpp | 0 .../generated-tests/unreachable.cpp | 0 .../wasm-spec-tests}/generated-tests/unwind.cpp | 0 .../generated-tests/wasm_spec_tests.hpp.in | 0 .../generated-tests/wasms/address.0.wasm | Bin .../generated-tests/wasms/address.2.wasm | Bin .../generated-tests/wasms/address.3.wasm | Bin .../generated-tests/wasms/address.4.wasm | Bin .../generated-tests/wasms/align.0.wasm | Bin .../generated-tests/wasms/align.1.wasm | Bin .../generated-tests/wasms/align.10.wasm | Bin .../generated-tests/wasms/align.106.wasm | Bin .../generated-tests/wasms/align.107.wasm | Bin .../generated-tests/wasms/align.11.wasm | Bin .../generated-tests/wasms/align.12.wasm | Bin .../generated-tests/wasms/align.13.wasm | Bin .../generated-tests/wasms/align.14.wasm | Bin .../generated-tests/wasms/align.15.wasm | Bin .../generated-tests/wasms/align.16.wasm | Bin .../generated-tests/wasms/align.17.wasm | Bin .../generated-tests/wasms/align.18.wasm | Bin .../generated-tests/wasms/align.19.wasm | Bin .../generated-tests/wasms/align.2.wasm | Bin .../generated-tests/wasms/align.20.wasm | Bin .../generated-tests/wasms/align.21.wasm | Bin .../generated-tests/wasms/align.22.wasm | Bin .../generated-tests/wasms/align.3.wasm | Bin .../generated-tests/wasms/align.4.wasm | Bin .../generated-tests/wasms/align.5.wasm | Bin .../generated-tests/wasms/align.6.wasm | Bin .../generated-tests/wasms/align.7.wasm | Bin .../generated-tests/wasms/align.8.wasm | Bin .../generated-tests/wasms/align.9.wasm | Bin .../generated-tests/wasms/binary-leb128.0.wasm | Bin .../generated-tests/wasms/binary-leb128.1.wasm | Bin .../generated-tests/wasms/binary-leb128.10.wasm | Bin .../generated-tests/wasms/binary-leb128.11.wasm | Bin .../generated-tests/wasms/binary-leb128.12.wasm | Bin .../generated-tests/wasms/binary-leb128.13.wasm | Bin .../generated-tests/wasms/binary-leb128.14.wasm | Bin .../generated-tests/wasms/binary-leb128.15.wasm | Bin .../generated-tests/wasms/binary-leb128.16.wasm | Bin .../generated-tests/wasms/binary-leb128.17.wasm | Bin .../generated-tests/wasms/binary-leb128.18.wasm | Bin .../generated-tests/wasms/binary-leb128.19.wasm | Bin .../generated-tests/wasms/binary-leb128.2.wasm | Bin .../generated-tests/wasms/binary-leb128.20.wasm | Bin .../generated-tests/wasms/binary-leb128.21.wasm | Bin .../generated-tests/wasms/binary-leb128.22.wasm | Bin .../generated-tests/wasms/binary-leb128.23.wasm | Bin .../generated-tests/wasms/binary-leb128.24.wasm | Bin .../generated-tests/wasms/binary-leb128.3.wasm | Bin .../generated-tests/wasms/binary-leb128.4.wasm | Bin .../generated-tests/wasms/binary-leb128.5.wasm | Bin .../generated-tests/wasms/binary-leb128.6.wasm | Bin .../generated-tests/wasms/binary-leb128.7.wasm | Bin .../generated-tests/wasms/binary-leb128.8.wasm | Bin .../generated-tests/wasms/binary-leb128.9.wasm | Bin .../generated-tests/wasms/binary.0.wasm | Bin .../generated-tests/wasms/binary.1.wasm | Bin .../generated-tests/wasms/binary.2.wasm | Bin .../generated-tests/wasms/binary.3.wasm | Bin .../generated-tests/wasms/binary.48.wasm | Bin .../generated-tests/wasms/binary.53.wasm | Bin .../generated-tests/wasms/binary.54.wasm | Bin .../generated-tests/wasms/block.0.wasm | Bin .../generated-tests/wasms/br.0.wasm | Bin .../generated-tests/wasms/br_if.0.wasm | Bin .../generated-tests/wasms/br_table.0.wasm | Bin .../generated-tests/wasms/break-drop.0.wasm | Bin .../generated-tests/wasms/call.0.wasm | Bin .../generated-tests/wasms/call_indirect.0.wasm | Bin .../generated-tests/wasms/const.0.wasm | Bin .../generated-tests/wasms/const.1.wasm | Bin .../generated-tests/wasms/const.100.wasm | Bin .../generated-tests/wasms/const.101.wasm | Bin .../generated-tests/wasms/const.102.wasm | Bin .../generated-tests/wasms/const.103.wasm | Bin .../generated-tests/wasms/const.104.wasm | Bin .../generated-tests/wasms/const.105.wasm | Bin .../generated-tests/wasms/const.106.wasm | Bin .../generated-tests/wasms/const.107.wasm | Bin .../generated-tests/wasms/const.108.wasm | Bin .../generated-tests/wasms/const.109.wasm | Bin .../generated-tests/wasms/const.110.wasm | Bin .../generated-tests/wasms/const.111.wasm | Bin .../generated-tests/wasms/const.112.wasm | Bin .../generated-tests/wasms/const.113.wasm | Bin .../generated-tests/wasms/const.114.wasm | Bin .../generated-tests/wasms/const.115.wasm | Bin .../generated-tests/wasms/const.116.wasm | Bin .../generated-tests/wasms/const.117.wasm | Bin .../generated-tests/wasms/const.118.wasm | Bin .../generated-tests/wasms/const.119.wasm | Bin .../generated-tests/wasms/const.12.wasm | Bin .../generated-tests/wasms/const.120.wasm | Bin .../generated-tests/wasms/const.121.wasm | Bin .../generated-tests/wasms/const.122.wasm | Bin .../generated-tests/wasms/const.123.wasm | Bin .../generated-tests/wasms/const.124.wasm | Bin .../generated-tests/wasms/const.125.wasm | Bin .../generated-tests/wasms/const.126.wasm | Bin .../generated-tests/wasms/const.127.wasm | Bin .../generated-tests/wasms/const.128.wasm | Bin .../generated-tests/wasms/const.129.wasm | Bin .../generated-tests/wasms/const.13.wasm | Bin .../generated-tests/wasms/const.130.wasm | Bin .../generated-tests/wasms/const.131.wasm | Bin .../generated-tests/wasms/const.132.wasm | Bin .../generated-tests/wasms/const.133.wasm | Bin .../generated-tests/wasms/const.134.wasm | Bin .../generated-tests/wasms/const.135.wasm | Bin .../generated-tests/wasms/const.136.wasm | Bin .../generated-tests/wasms/const.137.wasm | Bin .../generated-tests/wasms/const.138.wasm | Bin .../generated-tests/wasms/const.139.wasm | Bin .../generated-tests/wasms/const.140.wasm | Bin .../generated-tests/wasms/const.141.wasm | Bin .../generated-tests/wasms/const.142.wasm | Bin .../generated-tests/wasms/const.143.wasm | Bin .../generated-tests/wasms/const.144.wasm | Bin .../generated-tests/wasms/const.145.wasm | Bin .../generated-tests/wasms/const.146.wasm | Bin .../generated-tests/wasms/const.147.wasm | Bin .../generated-tests/wasms/const.148.wasm | Bin .../generated-tests/wasms/const.149.wasm | Bin .../generated-tests/wasms/const.150.wasm | Bin .../generated-tests/wasms/const.151.wasm | Bin .../generated-tests/wasms/const.152.wasm | Bin .../generated-tests/wasms/const.153.wasm | Bin .../generated-tests/wasms/const.154.wasm | Bin .../generated-tests/wasms/const.155.wasm | Bin .../generated-tests/wasms/const.156.wasm | Bin .../generated-tests/wasms/const.157.wasm | Bin .../generated-tests/wasms/const.158.wasm | Bin .../generated-tests/wasms/const.159.wasm | Bin .../generated-tests/wasms/const.16.wasm | Bin .../generated-tests/wasms/const.160.wasm | Bin .../generated-tests/wasms/const.161.wasm | Bin .../generated-tests/wasms/const.162.wasm | Bin .../generated-tests/wasms/const.163.wasm | Bin .../generated-tests/wasms/const.164.wasm | Bin .../generated-tests/wasms/const.165.wasm | Bin .../generated-tests/wasms/const.166.wasm | Bin .../generated-tests/wasms/const.167.wasm | Bin .../generated-tests/wasms/const.168.wasm | Bin .../generated-tests/wasms/const.169.wasm | Bin .../generated-tests/wasms/const.17.wasm | Bin .../generated-tests/wasms/const.170.wasm | Bin .../generated-tests/wasms/const.171.wasm | Bin .../generated-tests/wasms/const.172.wasm | Bin .../generated-tests/wasms/const.173.wasm | Bin .../generated-tests/wasms/const.174.wasm | Bin .../generated-tests/wasms/const.175.wasm | Bin .../generated-tests/wasms/const.176.wasm | Bin .../generated-tests/wasms/const.177.wasm | Bin .../generated-tests/wasms/const.178.wasm | Bin .../generated-tests/wasms/const.179.wasm | Bin .../generated-tests/wasms/const.18.wasm | Bin .../generated-tests/wasms/const.180.wasm | Bin .../generated-tests/wasms/const.181.wasm | Bin .../generated-tests/wasms/const.182.wasm | Bin .../generated-tests/wasms/const.183.wasm | Bin .../generated-tests/wasms/const.184.wasm | Bin .../generated-tests/wasms/const.185.wasm | Bin .../generated-tests/wasms/const.186.wasm | Bin .../generated-tests/wasms/const.187.wasm | Bin .../generated-tests/wasms/const.188.wasm | Bin .../generated-tests/wasms/const.189.wasm | Bin .../generated-tests/wasms/const.19.wasm | Bin .../generated-tests/wasms/const.190.wasm | Bin .../generated-tests/wasms/const.191.wasm | Bin .../generated-tests/wasms/const.192.wasm | Bin .../generated-tests/wasms/const.193.wasm | Bin .../generated-tests/wasms/const.194.wasm | Bin .../generated-tests/wasms/const.195.wasm | Bin .../generated-tests/wasms/const.196.wasm | Bin .../generated-tests/wasms/const.197.wasm | Bin .../generated-tests/wasms/const.198.wasm | Bin .../generated-tests/wasms/const.199.wasm | Bin .../generated-tests/wasms/const.20.wasm | Bin .../generated-tests/wasms/const.200.wasm | Bin .../generated-tests/wasms/const.201.wasm | Bin .../generated-tests/wasms/const.202.wasm | Bin .../generated-tests/wasms/const.203.wasm | Bin .../generated-tests/wasms/const.204.wasm | Bin .../generated-tests/wasms/const.205.wasm | Bin .../generated-tests/wasms/const.206.wasm | Bin .../generated-tests/wasms/const.207.wasm | Bin .../generated-tests/wasms/const.208.wasm | Bin .../generated-tests/wasms/const.209.wasm | Bin .../generated-tests/wasms/const.21.wasm | Bin .../generated-tests/wasms/const.210.wasm | Bin .../generated-tests/wasms/const.211.wasm | Bin .../generated-tests/wasms/const.212.wasm | Bin .../generated-tests/wasms/const.213.wasm | Bin .../generated-tests/wasms/const.214.wasm | Bin .../generated-tests/wasms/const.215.wasm | Bin .../generated-tests/wasms/const.216.wasm | Bin .../generated-tests/wasms/const.217.wasm | Bin .../generated-tests/wasms/const.218.wasm | Bin .../generated-tests/wasms/const.219.wasm | Bin .../generated-tests/wasms/const.22.wasm | Bin .../generated-tests/wasms/const.220.wasm | Bin .../generated-tests/wasms/const.221.wasm | Bin .../generated-tests/wasms/const.222.wasm | Bin .../generated-tests/wasms/const.223.wasm | Bin .../generated-tests/wasms/const.224.wasm | Bin .../generated-tests/wasms/const.225.wasm | Bin .../generated-tests/wasms/const.226.wasm | Bin .../generated-tests/wasms/const.227.wasm | Bin .../generated-tests/wasms/const.228.wasm | Bin .../generated-tests/wasms/const.229.wasm | Bin .../generated-tests/wasms/const.23.wasm | Bin .../generated-tests/wasms/const.230.wasm | Bin .../generated-tests/wasms/const.231.wasm | Bin .../generated-tests/wasms/const.232.wasm | Bin .../generated-tests/wasms/const.233.wasm | Bin .../generated-tests/wasms/const.234.wasm | Bin .../generated-tests/wasms/const.235.wasm | Bin .../generated-tests/wasms/const.236.wasm | Bin .../generated-tests/wasms/const.237.wasm | Bin .../generated-tests/wasms/const.238.wasm | Bin .../generated-tests/wasms/const.239.wasm | Bin .../generated-tests/wasms/const.24.wasm | Bin .../generated-tests/wasms/const.240.wasm | Bin .../generated-tests/wasms/const.241.wasm | Bin .../generated-tests/wasms/const.242.wasm | Bin .../generated-tests/wasms/const.243.wasm | Bin .../generated-tests/wasms/const.244.wasm | Bin .../generated-tests/wasms/const.245.wasm | Bin .../generated-tests/wasms/const.246.wasm | Bin .../generated-tests/wasms/const.247.wasm | Bin .../generated-tests/wasms/const.248.wasm | Bin .../generated-tests/wasms/const.249.wasm | Bin .../generated-tests/wasms/const.25.wasm | Bin .../generated-tests/wasms/const.250.wasm | Bin .../generated-tests/wasms/const.251.wasm | Bin .../generated-tests/wasms/const.252.wasm | Bin .../generated-tests/wasms/const.253.wasm | Bin .../generated-tests/wasms/const.254.wasm | Bin .../generated-tests/wasms/const.255.wasm | Bin .../generated-tests/wasms/const.256.wasm | Bin .../generated-tests/wasms/const.257.wasm | Bin .../generated-tests/wasms/const.258.wasm | Bin .../generated-tests/wasms/const.259.wasm | Bin .../generated-tests/wasms/const.260.wasm | Bin .../generated-tests/wasms/const.261.wasm | Bin .../generated-tests/wasms/const.262.wasm | Bin .../generated-tests/wasms/const.263.wasm | Bin .../generated-tests/wasms/const.264.wasm | Bin .../generated-tests/wasms/const.265.wasm | Bin .../generated-tests/wasms/const.266.wasm | Bin .../generated-tests/wasms/const.267.wasm | Bin .../generated-tests/wasms/const.268.wasm | Bin .../generated-tests/wasms/const.269.wasm | Bin .../generated-tests/wasms/const.270.wasm | Bin .../generated-tests/wasms/const.271.wasm | Bin .../generated-tests/wasms/const.272.wasm | Bin .../generated-tests/wasms/const.273.wasm | Bin .../generated-tests/wasms/const.274.wasm | Bin .../generated-tests/wasms/const.275.wasm | Bin .../generated-tests/wasms/const.276.wasm | Bin .../generated-tests/wasms/const.277.wasm | Bin .../generated-tests/wasms/const.278.wasm | Bin .../generated-tests/wasms/const.279.wasm | Bin .../generated-tests/wasms/const.280.wasm | Bin .../generated-tests/wasms/const.281.wasm | Bin .../generated-tests/wasms/const.282.wasm | Bin .../generated-tests/wasms/const.283.wasm | Bin .../generated-tests/wasms/const.284.wasm | Bin .../generated-tests/wasms/const.285.wasm | Bin .../generated-tests/wasms/const.286.wasm | Bin .../generated-tests/wasms/const.287.wasm | Bin .../generated-tests/wasms/const.288.wasm | Bin .../generated-tests/wasms/const.289.wasm | Bin .../generated-tests/wasms/const.290.wasm | Bin .../generated-tests/wasms/const.291.wasm | Bin .../generated-tests/wasms/const.292.wasm | Bin .../generated-tests/wasms/const.293.wasm | Bin .../generated-tests/wasms/const.294.wasm | Bin .../generated-tests/wasms/const.295.wasm | Bin .../generated-tests/wasms/const.296.wasm | Bin .../generated-tests/wasms/const.297.wasm | Bin .../generated-tests/wasms/const.298.wasm | Bin .../generated-tests/wasms/const.299.wasm | Bin .../generated-tests/wasms/const.30.wasm | Bin .../generated-tests/wasms/const.300.wasm | Bin .../generated-tests/wasms/const.301.wasm | Bin .../generated-tests/wasms/const.302.wasm | Bin .../generated-tests/wasms/const.303.wasm | Bin .../generated-tests/wasms/const.304.wasm | Bin .../generated-tests/wasms/const.305.wasm | Bin .../generated-tests/wasms/const.306.wasm | Bin .../generated-tests/wasms/const.307.wasm | Bin .../generated-tests/wasms/const.308.wasm | Bin .../generated-tests/wasms/const.309.wasm | Bin .../generated-tests/wasms/const.31.wasm | Bin .../generated-tests/wasms/const.310.wasm | Bin .../generated-tests/wasms/const.311.wasm | Bin .../generated-tests/wasms/const.312.wasm | Bin .../generated-tests/wasms/const.313.wasm | Bin .../generated-tests/wasms/const.314.wasm | Bin .../generated-tests/wasms/const.315.wasm | Bin .../generated-tests/wasms/const.316.wasm | Bin .../generated-tests/wasms/const.317.wasm | Bin .../generated-tests/wasms/const.318.wasm | Bin .../generated-tests/wasms/const.319.wasm | Bin .../generated-tests/wasms/const.320.wasm | Bin .../generated-tests/wasms/const.321.wasm | Bin .../generated-tests/wasms/const.322.wasm | Bin .../generated-tests/wasms/const.323.wasm | Bin .../generated-tests/wasms/const.324.wasm | Bin .../generated-tests/wasms/const.325.wasm | Bin .../generated-tests/wasms/const.326.wasm | Bin .../generated-tests/wasms/const.327.wasm | Bin .../generated-tests/wasms/const.328.wasm | Bin .../generated-tests/wasms/const.329.wasm | Bin .../generated-tests/wasms/const.330.wasm | Bin .../generated-tests/wasms/const.331.wasm | Bin .../generated-tests/wasms/const.332.wasm | Bin .../generated-tests/wasms/const.333.wasm | Bin .../generated-tests/wasms/const.334.wasm | Bin .../generated-tests/wasms/const.335.wasm | Bin .../generated-tests/wasms/const.336.wasm | Bin .../generated-tests/wasms/const.337.wasm | Bin .../generated-tests/wasms/const.338.wasm | Bin .../generated-tests/wasms/const.339.wasm | Bin .../generated-tests/wasms/const.34.wasm | Bin .../generated-tests/wasms/const.340.wasm | Bin .../generated-tests/wasms/const.341.wasm | Bin .../generated-tests/wasms/const.342.wasm | Bin .../generated-tests/wasms/const.343.wasm | Bin .../generated-tests/wasms/const.344.wasm | Bin .../generated-tests/wasms/const.345.wasm | Bin .../generated-tests/wasms/const.346.wasm | Bin .../generated-tests/wasms/const.347.wasm | Bin .../generated-tests/wasms/const.348.wasm | Bin .../generated-tests/wasms/const.349.wasm | Bin .../generated-tests/wasms/const.35.wasm | Bin .../generated-tests/wasms/const.350.wasm | Bin .../generated-tests/wasms/const.351.wasm | Bin .../generated-tests/wasms/const.352.wasm | Bin .../generated-tests/wasms/const.353.wasm | Bin .../generated-tests/wasms/const.354.wasm | Bin .../generated-tests/wasms/const.355.wasm | Bin .../generated-tests/wasms/const.356.wasm | Bin .../generated-tests/wasms/const.357.wasm | Bin .../generated-tests/wasms/const.358.wasm | Bin .../generated-tests/wasms/const.359.wasm | Bin .../generated-tests/wasms/const.360.wasm | Bin .../generated-tests/wasms/const.361.wasm | Bin .../generated-tests/wasms/const.362.wasm | Bin .../generated-tests/wasms/const.363.wasm | Bin .../generated-tests/wasms/const.364.wasm | Bin .../generated-tests/wasms/const.365.wasm | Bin .../generated-tests/wasms/const.366.wasm | Bin .../generated-tests/wasms/const.367.wasm | Bin .../generated-tests/wasms/const.38.wasm | Bin .../generated-tests/wasms/const.39.wasm | Bin .../generated-tests/wasms/const.4.wasm | Bin .../generated-tests/wasms/const.40.wasm | Bin .../generated-tests/wasms/const.41.wasm | Bin .../generated-tests/wasms/const.42.wasm | Bin .../generated-tests/wasms/const.43.wasm | Bin .../generated-tests/wasms/const.44.wasm | Bin .../generated-tests/wasms/const.45.wasm | Bin .../generated-tests/wasms/const.5.wasm | Bin .../generated-tests/wasms/const.50.wasm | Bin .../generated-tests/wasms/const.51.wasm | Bin .../generated-tests/wasms/const.54.wasm | Bin .../generated-tests/wasms/const.55.wasm | Bin .../generated-tests/wasms/const.58.wasm | Bin .../generated-tests/wasms/const.59.wasm | Bin .../generated-tests/wasms/const.60.wasm | Bin .../generated-tests/wasms/const.61.wasm | Bin .../generated-tests/wasms/const.68.wasm | Bin .../generated-tests/wasms/const.69.wasm | Bin .../generated-tests/wasms/const.70.wasm | Bin .../generated-tests/wasms/const.71.wasm | Bin .../generated-tests/wasms/const.72.wasm | Bin .../generated-tests/wasms/const.73.wasm | Bin .../generated-tests/wasms/const.74.wasm | Bin .../generated-tests/wasms/const.75.wasm | Bin .../generated-tests/wasms/const.76.wasm | Bin .../generated-tests/wasms/const.77.wasm | Bin .../generated-tests/wasms/const.78.wasm | Bin .../generated-tests/wasms/const.79.wasm | Bin .../generated-tests/wasms/const.8.wasm | Bin .../generated-tests/wasms/const.80.wasm | Bin .../generated-tests/wasms/const.81.wasm | Bin .../generated-tests/wasms/const.82.wasm | Bin .../generated-tests/wasms/const.83.wasm | Bin .../generated-tests/wasms/const.84.wasm | Bin .../generated-tests/wasms/const.85.wasm | Bin .../generated-tests/wasms/const.86.wasm | Bin .../generated-tests/wasms/const.87.wasm | Bin .../generated-tests/wasms/const.88.wasm | Bin .../generated-tests/wasms/const.89.wasm | Bin .../generated-tests/wasms/const.9.wasm | Bin .../generated-tests/wasms/const.90.wasm | Bin .../generated-tests/wasms/const.91.wasm | Bin .../generated-tests/wasms/const.92.wasm | Bin .../generated-tests/wasms/const.93.wasm | Bin .../generated-tests/wasms/const.94.wasm | Bin .../generated-tests/wasms/const.95.wasm | Bin .../generated-tests/wasms/const.96.wasm | Bin .../generated-tests/wasms/const.97.wasm | Bin .../generated-tests/wasms/const.98.wasm | Bin .../generated-tests/wasms/const.99.wasm | Bin .../generated-tests/wasms/conversions.0.wasm | Bin .../generated-tests/wasms/custom.0.wasm | Bin .../generated-tests/wasms/custom.1.wasm | Bin .../generated-tests/wasms/custom.2.wasm | Bin .../generated-tests/wasms/endianness.0.wasm | Bin .../generated-tests/wasms/f32.0.wasm | Bin .../generated-tests/wasms/f32_bitwise.0.wasm | Bin .../generated-tests/wasms/f32_cmp.0.wasm | Bin .../generated-tests/wasms/f64.0.wasm | Bin .../generated-tests/wasms/f64_bitwise.0.wasm | Bin .../generated-tests/wasms/f64_cmp.0.wasm | Bin .../generated-tests/wasms/fac.0.wasm | Bin .../generated-tests/wasms/float_exprs.0.wasm | Bin .../generated-tests/wasms/float_exprs.1.wasm | Bin .../generated-tests/wasms/float_exprs.10.wasm | Bin .../generated-tests/wasms/float_exprs.11.wasm | Bin .../generated-tests/wasms/float_exprs.12.wasm | Bin .../generated-tests/wasms/float_exprs.13.wasm | Bin .../generated-tests/wasms/float_exprs.14.wasm | Bin .../generated-tests/wasms/float_exprs.15.wasm | Bin .../generated-tests/wasms/float_exprs.16.wasm | Bin .../generated-tests/wasms/float_exprs.17.wasm | Bin .../generated-tests/wasms/float_exprs.18.wasm | Bin .../generated-tests/wasms/float_exprs.19.wasm | Bin .../generated-tests/wasms/float_exprs.2.wasm | Bin .../generated-tests/wasms/float_exprs.20.wasm | Bin .../generated-tests/wasms/float_exprs.21.wasm | Bin .../generated-tests/wasms/float_exprs.22.wasm | Bin .../generated-tests/wasms/float_exprs.23.wasm | Bin .../generated-tests/wasms/float_exprs.24.wasm | Bin .../generated-tests/wasms/float_exprs.25.wasm | Bin .../generated-tests/wasms/float_exprs.26.wasm | Bin .../generated-tests/wasms/float_exprs.27.wasm | Bin .../generated-tests/wasms/float_exprs.28.wasm | Bin .../generated-tests/wasms/float_exprs.29.wasm | Bin .../generated-tests/wasms/float_exprs.3.wasm | Bin .../generated-tests/wasms/float_exprs.30.wasm | Bin .../generated-tests/wasms/float_exprs.31.wasm | Bin .../generated-tests/wasms/float_exprs.32.wasm | Bin .../generated-tests/wasms/float_exprs.33.wasm | Bin .../generated-tests/wasms/float_exprs.34.wasm | Bin .../generated-tests/wasms/float_exprs.35.wasm | Bin .../generated-tests/wasms/float_exprs.36.wasm | Bin .../generated-tests/wasms/float_exprs.37.wasm | Bin .../generated-tests/wasms/float_exprs.38.wasm | Bin .../generated-tests/wasms/float_exprs.39.wasm | Bin .../generated-tests/wasms/float_exprs.4.wasm | Bin .../generated-tests/wasms/float_exprs.40.wasm | Bin .../generated-tests/wasms/float_exprs.41.wasm | Bin .../generated-tests/wasms/float_exprs.42.wasm | Bin .../generated-tests/wasms/float_exprs.43.wasm | Bin .../generated-tests/wasms/float_exprs.44.wasm | Bin .../generated-tests/wasms/float_exprs.45.wasm | Bin .../generated-tests/wasms/float_exprs.46.wasm | Bin .../generated-tests/wasms/float_exprs.47.wasm | Bin .../generated-tests/wasms/float_exprs.48.wasm | Bin .../generated-tests/wasms/float_exprs.49.wasm | Bin .../generated-tests/wasms/float_exprs.5.wasm | Bin .../generated-tests/wasms/float_exprs.50.wasm | Bin .../generated-tests/wasms/float_exprs.51.wasm | Bin .../generated-tests/wasms/float_exprs.52.wasm | Bin .../generated-tests/wasms/float_exprs.53.wasm | Bin .../generated-tests/wasms/float_exprs.54.wasm | Bin .../generated-tests/wasms/float_exprs.55.wasm | Bin .../generated-tests/wasms/float_exprs.56.wasm | Bin .../generated-tests/wasms/float_exprs.57.wasm | Bin .../generated-tests/wasms/float_exprs.58.wasm | Bin .../generated-tests/wasms/float_exprs.59.wasm | Bin .../generated-tests/wasms/float_exprs.6.wasm | Bin .../generated-tests/wasms/float_exprs.60.wasm | Bin .../generated-tests/wasms/float_exprs.61.wasm | Bin .../generated-tests/wasms/float_exprs.62.wasm | Bin .../generated-tests/wasms/float_exprs.63.wasm | Bin .../generated-tests/wasms/float_exprs.64.wasm | Bin .../generated-tests/wasms/float_exprs.65.wasm | Bin .../generated-tests/wasms/float_exprs.66.wasm | Bin .../generated-tests/wasms/float_exprs.67.wasm | Bin .../generated-tests/wasms/float_exprs.68.wasm | Bin .../generated-tests/wasms/float_exprs.69.wasm | Bin .../generated-tests/wasms/float_exprs.7.wasm | Bin .../generated-tests/wasms/float_exprs.70.wasm | Bin .../generated-tests/wasms/float_exprs.71.wasm | Bin .../generated-tests/wasms/float_exprs.72.wasm | Bin .../generated-tests/wasms/float_exprs.73.wasm | Bin .../generated-tests/wasms/float_exprs.74.wasm | Bin .../generated-tests/wasms/float_exprs.75.wasm | Bin .../generated-tests/wasms/float_exprs.76.wasm | Bin .../generated-tests/wasms/float_exprs.77.wasm | Bin .../generated-tests/wasms/float_exprs.78.wasm | Bin .../generated-tests/wasms/float_exprs.79.wasm | Bin .../generated-tests/wasms/float_exprs.8.wasm | Bin .../generated-tests/wasms/float_exprs.80.wasm | Bin .../generated-tests/wasms/float_exprs.81.wasm | Bin .../generated-tests/wasms/float_exprs.82.wasm | Bin .../generated-tests/wasms/float_exprs.83.wasm | Bin .../generated-tests/wasms/float_exprs.84.wasm | Bin .../generated-tests/wasms/float_exprs.85.wasm | Bin .../generated-tests/wasms/float_exprs.86.wasm | Bin .../generated-tests/wasms/float_exprs.87.wasm | Bin .../generated-tests/wasms/float_exprs.88.wasm | Bin .../generated-tests/wasms/float_exprs.89.wasm | Bin .../generated-tests/wasms/float_exprs.9.wasm | Bin .../generated-tests/wasms/float_exprs.90.wasm | Bin .../generated-tests/wasms/float_exprs.91.wasm | Bin .../generated-tests/wasms/float_exprs.92.wasm | Bin .../generated-tests/wasms/float_exprs.93.wasm | Bin .../generated-tests/wasms/float_exprs.94.wasm | Bin .../generated-tests/wasms/float_exprs.95.wasm | Bin .../generated-tests/wasms/float_literals.0.wasm | Bin .../generated-tests/wasms/float_literals.1.wasm | Bin .../generated-tests/wasms/float_memory.0.wasm | Bin .../generated-tests/wasms/float_memory.1.wasm | Bin .../generated-tests/wasms/float_memory.2.wasm | Bin .../generated-tests/wasms/float_memory.3.wasm | Bin .../generated-tests/wasms/float_memory.4.wasm | Bin .../generated-tests/wasms/float_memory.5.wasm | Bin .../generated-tests/wasms/float_misc.0.wasm | Bin .../generated-tests/wasms/forward.0.wasm | Bin .../generated-tests/wasms/func.0.wasm | Bin .../generated-tests/wasms/func.1.wasm | Bin .../generated-tests/wasms/func.3.wasm | Bin .../generated-tests/wasms/func_ptrs.0.wasm | Bin .../generated-tests/wasms/func_ptrs.8.wasm | Bin .../generated-tests/wasms/func_ptrs.9.wasm | Bin .../generated-tests/wasms/globals.0.wasm | Bin .../generated-tests/wasms/globals.17.wasm | Bin .../generated-tests/wasms/i32.0.wasm | Bin .../generated-tests/wasms/i64.0.wasm | Bin .../generated-tests/wasms/if.0.wasm | Bin .../generated-tests/wasms/int_exprs.0.wasm | Bin .../generated-tests/wasms/int_exprs.1.wasm | Bin .../generated-tests/wasms/int_exprs.10.wasm | Bin .../generated-tests/wasms/int_exprs.11.wasm | Bin .../generated-tests/wasms/int_exprs.12.wasm | Bin .../generated-tests/wasms/int_exprs.13.wasm | Bin .../generated-tests/wasms/int_exprs.14.wasm | Bin .../generated-tests/wasms/int_exprs.15.wasm | Bin .../generated-tests/wasms/int_exprs.16.wasm | Bin .../generated-tests/wasms/int_exprs.17.wasm | Bin .../generated-tests/wasms/int_exprs.18.wasm | Bin .../generated-tests/wasms/int_exprs.2.wasm | Bin .../generated-tests/wasms/int_exprs.3.wasm | Bin .../generated-tests/wasms/int_exprs.4.wasm | Bin .../generated-tests/wasms/int_exprs.5.wasm | Bin .../generated-tests/wasms/int_exprs.6.wasm | Bin .../generated-tests/wasms/int_exprs.7.wasm | Bin .../generated-tests/wasms/int_exprs.8.wasm | Bin .../generated-tests/wasms/int_exprs.9.wasm | Bin .../generated-tests/wasms/int_literals.0.wasm | Bin .../generated-tests/wasms/labels.0.wasm | Bin .../generated-tests/wasms/left-to-right.0.wasm | Bin .../generated-tests/wasms/load.0.wasm | Bin .../generated-tests/wasms/local_get.0.wasm | Bin .../generated-tests/wasms/local_set.0.wasm | Bin .../generated-tests/wasms/local_tee.0.wasm | Bin .../generated-tests/wasms/loop.0.wasm | Bin .../generated-tests/wasms/memory.0.wasm | Bin .../generated-tests/wasms/memory.1.wasm | Bin .../generated-tests/wasms/memory.2.wasm | Bin .../generated-tests/wasms/memory.25.wasm | Bin .../generated-tests/wasms/memory.3.wasm | Bin .../generated-tests/wasms/memory.6.wasm | Bin .../generated-tests/wasms/memory.7.wasm | Bin .../generated-tests/wasms/memory.8.wasm | Bin .../generated-tests/wasms/memory_grow.0.wasm | Bin .../generated-tests/wasms/memory_grow.1.wasm | Bin .../generated-tests/wasms/memory_grow.2.wasm | Bin .../generated-tests/wasms/memory_grow.3.wasm | Bin .../generated-tests/wasms/memory_grow.4.wasm | Bin .../generated-tests/wasms/memory_redundancy.0.wasm | Bin .../generated-tests/wasms/memory_size.0.wasm | Bin .../generated-tests/wasms/memory_size.1.wasm | Bin .../generated-tests/wasms/memory_size.2.wasm | Bin .../generated-tests/wasms/memory_size.3.wasm | Bin .../generated-tests/wasms/memory_trap.0.wasm | Bin .../generated-tests/wasms/memory_trap.1.wasm | Bin .../generated-tests/wasms/nop.0.wasm | Bin .../generated-tests/wasms/return.0.wasm | Bin .../generated-tests/wasms/select.0.wasm | Bin .../generated-tests/wasms/stack.0.wasm | Bin .../generated-tests/wasms/stack.1.wasm | Bin .../generated-tests/wasms/start.3.wasm | Bin .../generated-tests/wasms/start.4.wasm | Bin .../generated-tests/wasms/start.5.wasm | Bin .../generated-tests/wasms/start.6.wasm | Bin .../generated-tests/wasms/start.7.wasm | Bin .../generated-tests/wasms/store.0.wasm | Bin .../generated-tests/wasms/switch.0.wasm | Bin .../generated-tests/wasms/traps.0.wasm | Bin .../generated-tests/wasms/traps.1.wasm | Bin .../generated-tests/wasms/traps.2.wasm | Bin .../generated-tests/wasms/traps.3.wasm | Bin .../generated-tests/wasms/type.0.wasm | Bin .../generated-tests/wasms/unreachable.0.wasm | Bin .../generated-tests/wasms/unwind.0.wasm | Bin .../wasm-spec-tests}/generator/CMakeLists.txt | 0 .../generator/altered-wasms/address/address.0.wasm | Bin .../generator/altered-wasms/address/address.2.wasm | Bin .../generator/altered-wasms/address/address.3.wasm | Bin .../generator/altered-wasms/address/address.4.wasm | Bin .../generator/altered-wasms/address/notes.md | 0 .../generator/altered-wasms/align/align.0.wasm | Bin .../generator/altered-wasms/align/align.1.wasm | Bin .../generator/altered-wasms/align/align.10.wasm | Bin .../generator/altered-wasms/align/align.11.wasm | Bin .../generator/altered-wasms/align/align.12.wasm | Bin .../generator/altered-wasms/align/align.13.wasm | Bin .../generator/altered-wasms/align/align.14.wasm | Bin .../generator/altered-wasms/align/align.15.wasm | Bin .../generator/altered-wasms/align/align.16.wasm | Bin .../generator/altered-wasms/align/align.17.wasm | Bin .../generator/altered-wasms/align/align.18.wasm | Bin .../generator/altered-wasms/align/align.19.wasm | Bin .../generator/altered-wasms/align/align.2.wasm | Bin .../generator/altered-wasms/align/align.20.wasm | Bin .../generator/altered-wasms/align/align.21.wasm | Bin .../generator/altered-wasms/align/align.22.wasm | Bin .../generator/altered-wasms/align/align.3.wasm | Bin .../generator/altered-wasms/align/align.4.wasm | Bin .../generator/altered-wasms/align/align.5.wasm | Bin .../generator/altered-wasms/align/align.6.wasm | Bin .../generator/altered-wasms/align/align.7.wasm | Bin .../generator/altered-wasms/align/align.8.wasm | Bin .../generator/altered-wasms/align/align.9.wasm | Bin .../generator/altered-wasms/align/notes.md | 0 .../binary-leb128/binary-leb128.10.wasm | Bin .../binary-leb128/binary-leb128.11.wasm | Bin .../binary-leb128/binary-leb128.12.wasm | Bin .../binary-leb128/binary-leb128.4.wasm | Bin .../generator/altered-wasms/binary-leb128/notes.md | 0 .../generator/altered-wasms/br_table/br_table.0.cpp | 0 .../altered-wasms/br_table/br_table.0.wasm | Bin .../generator/altered-wasms/br_table/notes.md | 0 .../altered-wasms/func_ptrs/func_ptrs.0.wasm | Bin .../generator/altered-wasms/func_ptrs/notes.md | 0 .../generator/altered-wasms/memory/memory.0.wasm | Bin .../generator/altered-wasms/memory/memory.1.wasm | Bin .../generator/altered-wasms/memory/memory.3.wasm | Bin .../altered-wasms/memory_grow/memory_grow.0.cpp | 0 .../altered-wasms/memory_grow/memory_grow.0.wasm | Bin .../altered-wasms/memory_grow/memory_grow.1.cpp | 0 .../altered-wasms/memory_grow/memory_grow.1.wasm | Bin .../altered-wasms/memory_grow/memory_grow.2.cpp | 0 .../altered-wasms/memory_grow/memory_grow.2.wasm | Bin .../generator/altered-wasms/memory_grow/notes.md | 0 .../altered-wasms/memory_size/memory_size.0.cpp | 0 .../altered-wasms/memory_size/memory_size.0.wasm | Bin .../altered-wasms/memory_size/memory_size.2.cpp | 0 .../altered-wasms/memory_size/memory_size.2.wasm | Bin .../generator/altered-wasms/memory_size/notes.md | 0 .../generator/altered-wasms/start/notes.md | 0 .../generator/altered-wasms/start/start.5.wasm | Bin .../generator/altered-wasms/start/start.6.wasm | Bin .../generator/altered-wasms/start/start.7.wasm | Bin .../wasm-spec-tests}/generator/compile_tests.py | 0 .../generator/eosio_test_generator.cpp | 0 .../generator/eosio_test_generator.hpp | 0 .../generator/eosio_wasm_spec_test_generator.cpp | 0 .../generator/generate_eosio_tests.py | 0 .../wasm-spec-tests}/generator/generated_wasm.py | 0 .../wasm-spec-tests}/generator/lookahead.py | 0 .../wasm-spec-tests}/generator/picojson.hpp | 0 .../wasm-spec-tests}/generator/regexes.py | 0 .../wasm-spec-tests}/generator/setup_eosio_tests.py | 0 .../wasm-spec-tests}/generator/test_wasm.py | 0 .../wasm-spec-tests}/generator/wasm.py | 0 736 files changed, 4 insertions(+), 4 deletions(-) rename {wasm-spec-tests => unittests/wasm-spec-tests}/README.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/CMakeLists.txt (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/address.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/align.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/binary-leb128.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/binary.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/block.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/br.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/br_if.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/br_table.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/break-drop.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/call.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/call_indirect.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/const.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/conversions.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/custom.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/endianness.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/f32.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/f32_bitwise.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/f32_cmp.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/f64.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/f64_bitwise.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/f64_cmp.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/fac.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/float_exprs.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/float_literals.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/float_memory.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/float_misc.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/forward.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/func.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/func_ptrs.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/globals.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/i32.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/i64.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/if.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/int_exprs.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/int_literals.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/labels.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/left-to-right.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/load.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/local_get.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/local_set.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/local_tee.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/loop.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/main.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/memory.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/memory_grow.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/memory_redundancy.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/memory_size.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/memory_trap.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/nop.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/return.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/select.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/stack.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/start.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/store.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/switch.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/traps.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/type.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/unreachable.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/unwind.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasm_spec_tests.hpp.in (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/address.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/address.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/address.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/address.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.10.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.106.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.107.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.11.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.13.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.14.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.15.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.16.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.18.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.19.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.20.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.21.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.22.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/align.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.10.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.11.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.13.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.14.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.15.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.16.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.18.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.19.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.20.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.21.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.22.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.23.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.24.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary-leb128.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.48.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.53.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/binary.54.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/block.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/br.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/br_if.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/br_table.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/break-drop.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/call.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/call_indirect.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.100.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.101.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.102.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.103.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.104.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.105.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.106.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.107.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.108.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.109.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.110.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.111.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.112.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.113.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.114.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.115.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.116.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.117.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.118.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.119.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.120.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.121.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.122.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.123.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.124.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.125.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.126.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.127.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.128.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.129.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.13.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.130.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.131.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.132.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.133.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.134.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.135.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.136.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.137.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.138.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.139.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.140.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.141.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.142.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.143.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.144.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.145.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.146.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.147.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.148.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.149.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.150.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.151.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.152.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.153.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.154.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.155.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.156.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.157.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.158.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.159.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.16.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.160.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.161.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.162.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.163.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.164.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.165.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.166.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.167.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.168.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.169.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.170.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.171.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.172.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.173.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.174.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.175.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.176.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.177.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.178.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.179.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.18.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.180.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.181.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.182.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.183.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.184.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.185.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.186.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.187.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.188.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.189.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.19.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.190.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.191.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.192.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.193.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.194.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.195.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.196.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.197.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.198.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.199.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.20.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.200.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.201.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.202.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.203.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.204.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.205.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.206.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.207.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.208.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.209.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.21.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.210.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.211.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.212.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.213.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.214.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.215.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.216.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.217.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.218.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.219.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.22.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.220.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.221.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.222.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.223.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.224.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.225.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.226.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.227.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.228.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.229.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.23.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.230.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.231.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.232.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.233.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.234.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.235.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.236.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.237.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.238.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.239.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.24.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.240.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.241.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.242.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.243.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.244.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.245.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.246.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.247.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.248.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.249.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.25.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.250.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.251.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.252.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.253.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.254.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.255.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.256.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.257.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.258.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.259.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.260.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.261.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.262.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.263.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.264.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.265.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.266.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.267.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.268.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.269.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.270.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.271.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.272.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.273.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.274.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.275.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.276.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.277.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.278.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.279.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.280.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.281.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.282.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.283.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.284.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.285.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.286.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.287.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.288.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.289.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.290.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.291.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.292.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.293.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.294.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.295.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.296.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.297.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.298.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.299.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.30.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.300.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.301.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.302.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.303.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.304.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.305.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.306.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.307.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.308.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.309.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.31.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.310.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.311.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.312.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.313.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.314.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.315.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.316.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.317.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.318.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.319.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.320.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.321.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.322.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.323.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.324.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.325.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.326.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.327.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.328.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.329.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.330.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.331.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.332.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.333.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.334.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.335.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.336.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.337.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.338.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.339.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.34.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.340.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.341.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.342.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.343.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.344.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.345.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.346.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.347.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.348.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.349.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.35.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.350.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.351.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.352.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.353.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.354.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.355.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.356.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.357.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.358.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.359.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.360.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.361.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.362.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.363.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.364.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.365.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.366.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.367.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.38.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.39.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.40.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.41.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.42.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.43.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.44.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.45.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.50.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.51.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.54.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.55.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.58.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.59.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.60.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.61.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.68.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.69.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.70.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.71.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.72.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.73.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.74.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.75.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.76.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.77.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.78.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.79.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.80.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.81.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.82.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.83.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.84.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.85.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.86.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.87.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.88.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.89.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.90.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.91.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.92.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.93.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.94.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.95.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.96.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.97.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.98.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/const.99.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/conversions.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/custom.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/custom.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/custom.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/endianness.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/f32.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/f32_bitwise.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/f32_cmp.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/f64.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/f64_bitwise.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/f64_cmp.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/fac.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.10.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.11.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.13.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.14.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.15.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.16.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.18.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.19.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.20.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.21.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.22.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.23.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.24.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.25.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.26.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.27.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.28.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.29.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.30.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.31.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.32.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.33.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.34.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.35.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.36.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.37.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.38.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.39.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.40.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.41.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.42.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.43.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.44.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.45.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.46.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.47.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.48.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.49.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.50.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.51.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.52.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.53.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.54.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.55.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.56.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.57.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.58.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.59.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.60.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.61.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.62.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.63.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.64.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.65.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.66.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.67.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.68.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.69.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.70.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.71.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.72.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.73.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.74.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.75.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.76.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.77.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.78.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.79.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.80.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.81.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.82.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.83.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.84.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.85.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.86.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.87.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.88.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.89.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.90.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.91.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.92.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.93.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.94.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_exprs.95.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_literals.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_literals.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_memory.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_memory.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_memory.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_memory.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_memory.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_memory.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/float_misc.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/forward.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/func.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/func.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/func.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/func_ptrs.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/func_ptrs.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/func_ptrs.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/globals.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/globals.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/i32.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/i64.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/if.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.10.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.11.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.13.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.14.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.15.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.16.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.18.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_exprs.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/int_literals.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/labels.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/left-to-right.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/load.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/local_get.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/local_set.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/local_tee.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/loop.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.25.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_grow.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_grow.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_grow.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_grow.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_grow.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_redundancy.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_size.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_size.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_size.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_size.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_trap.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/memory_trap.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/nop.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/return.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/select.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/stack.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/stack.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/start.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/start.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/start.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/start.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/start.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/store.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/switch.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/traps.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/traps.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/traps.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/traps.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/type.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/unreachable.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generated-tests/wasms/unwind.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/CMakeLists.txt (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/address/address.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/address/address.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/address/address.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/address/address.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/address/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.10.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.11.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.13.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.14.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.15.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.16.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.17.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.18.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.19.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.20.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.21.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.22.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.8.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/align.9.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/align/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/binary-leb128/binary-leb128.11.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/binary-leb128/binary-leb128.12.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/binary-leb128/binary-leb128.4.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/binary-leb128/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/br_table/br_table.0.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/br_table/br_table.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/br_table/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/func_ptrs/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory/memory.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory/memory.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory/memory.3.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/memory_grow.0.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/memory_grow.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/memory_grow.1.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/memory_grow.1.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/memory_grow.2.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/memory_grow.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_grow/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_size/memory_size.0.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_size/memory_size.0.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_size/memory_size.2.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_size/memory_size.2.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/memory_size/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/start/notes.md (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/start/start.5.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/start/start.6.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/altered-wasms/start/start.7.wasm (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/compile_tests.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/eosio_test_generator.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/eosio_test_generator.hpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/eosio_wasm_spec_test_generator.cpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/generate_eosio_tests.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/generated_wasm.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/lookahead.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/picojson.hpp (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/regexes.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/setup_eosio_tests.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/test_wasm.py (100%) rename {wasm-spec-tests => unittests/wasm-spec-tests}/generator/wasm.py (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3d9d0f8b96..0f4ca658bd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -185,10 +185,6 @@ add_subdirectory( benchmark ) option(DISABLE_WASM_SPEC_TESTS "disable building of wasm spec unit tests" OFF) -if (NOT DISABLE_WASM_SPEC_TESTS) -add_subdirectory( wasm-spec-tests/generated-tests ) -endif() - install(FILES testnet.template DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/eosio/launcher COMPONENT dev EXCLUDE_FROM_ALL) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/testnet.template ${CMAKE_CURRENT_BINARY_DIR}/etc/eosio/launcher/testnet.template COPYONLY) diff --git a/unittests/CMakeLists.txt b/unittests/CMakeLists.txt index 1c6c70954d..98ef546086 100644 --- a/unittests/CMakeLists.txt +++ b/unittests/CMakeLists.txt @@ -36,6 +36,10 @@ endif() add_subdirectory(contracts) +if (NOT DISABLE_WASM_SPEC_TESTS) +add_subdirectory( wasm-spec-tests/generated-tests ) +endif() + add_subdirectory(snapshots) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/snapshots.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/include/snapshots.hpp ESCAPE_QUOTES) diff --git a/wasm-spec-tests/README.md b/unittests/wasm-spec-tests/README.md similarity index 100% rename from wasm-spec-tests/README.md rename to unittests/wasm-spec-tests/README.md diff --git a/wasm-spec-tests/generated-tests/CMakeLists.txt b/unittests/wasm-spec-tests/generated-tests/CMakeLists.txt similarity index 100% rename from wasm-spec-tests/generated-tests/CMakeLists.txt rename to unittests/wasm-spec-tests/generated-tests/CMakeLists.txt diff --git a/wasm-spec-tests/generated-tests/address.cpp b/unittests/wasm-spec-tests/generated-tests/address.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/address.cpp rename to unittests/wasm-spec-tests/generated-tests/address.cpp diff --git a/wasm-spec-tests/generated-tests/align.cpp b/unittests/wasm-spec-tests/generated-tests/align.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/align.cpp rename to unittests/wasm-spec-tests/generated-tests/align.cpp diff --git a/wasm-spec-tests/generated-tests/binary-leb128.cpp b/unittests/wasm-spec-tests/generated-tests/binary-leb128.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/binary-leb128.cpp rename to unittests/wasm-spec-tests/generated-tests/binary-leb128.cpp diff --git a/wasm-spec-tests/generated-tests/binary.cpp b/unittests/wasm-spec-tests/generated-tests/binary.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/binary.cpp rename to unittests/wasm-spec-tests/generated-tests/binary.cpp diff --git a/wasm-spec-tests/generated-tests/block.cpp b/unittests/wasm-spec-tests/generated-tests/block.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/block.cpp rename to unittests/wasm-spec-tests/generated-tests/block.cpp diff --git a/wasm-spec-tests/generated-tests/br.cpp b/unittests/wasm-spec-tests/generated-tests/br.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/br.cpp rename to unittests/wasm-spec-tests/generated-tests/br.cpp diff --git a/wasm-spec-tests/generated-tests/br_if.cpp b/unittests/wasm-spec-tests/generated-tests/br_if.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/br_if.cpp rename to unittests/wasm-spec-tests/generated-tests/br_if.cpp diff --git a/wasm-spec-tests/generated-tests/br_table.cpp b/unittests/wasm-spec-tests/generated-tests/br_table.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/br_table.cpp rename to unittests/wasm-spec-tests/generated-tests/br_table.cpp diff --git a/wasm-spec-tests/generated-tests/break-drop.cpp b/unittests/wasm-spec-tests/generated-tests/break-drop.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/break-drop.cpp rename to unittests/wasm-spec-tests/generated-tests/break-drop.cpp diff --git a/wasm-spec-tests/generated-tests/call.cpp b/unittests/wasm-spec-tests/generated-tests/call.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/call.cpp rename to unittests/wasm-spec-tests/generated-tests/call.cpp diff --git a/wasm-spec-tests/generated-tests/call_indirect.cpp b/unittests/wasm-spec-tests/generated-tests/call_indirect.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/call_indirect.cpp rename to unittests/wasm-spec-tests/generated-tests/call_indirect.cpp diff --git a/wasm-spec-tests/generated-tests/const.cpp b/unittests/wasm-spec-tests/generated-tests/const.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/const.cpp rename to unittests/wasm-spec-tests/generated-tests/const.cpp diff --git a/wasm-spec-tests/generated-tests/conversions.cpp b/unittests/wasm-spec-tests/generated-tests/conversions.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/conversions.cpp rename to unittests/wasm-spec-tests/generated-tests/conversions.cpp diff --git a/wasm-spec-tests/generated-tests/custom.cpp b/unittests/wasm-spec-tests/generated-tests/custom.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/custom.cpp rename to unittests/wasm-spec-tests/generated-tests/custom.cpp diff --git a/wasm-spec-tests/generated-tests/endianness.cpp b/unittests/wasm-spec-tests/generated-tests/endianness.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/endianness.cpp rename to unittests/wasm-spec-tests/generated-tests/endianness.cpp diff --git a/wasm-spec-tests/generated-tests/f32.cpp b/unittests/wasm-spec-tests/generated-tests/f32.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/f32.cpp rename to unittests/wasm-spec-tests/generated-tests/f32.cpp diff --git a/wasm-spec-tests/generated-tests/f32_bitwise.cpp b/unittests/wasm-spec-tests/generated-tests/f32_bitwise.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/f32_bitwise.cpp rename to unittests/wasm-spec-tests/generated-tests/f32_bitwise.cpp diff --git a/wasm-spec-tests/generated-tests/f32_cmp.cpp b/unittests/wasm-spec-tests/generated-tests/f32_cmp.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/f32_cmp.cpp rename to unittests/wasm-spec-tests/generated-tests/f32_cmp.cpp diff --git a/wasm-spec-tests/generated-tests/f64.cpp b/unittests/wasm-spec-tests/generated-tests/f64.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/f64.cpp rename to unittests/wasm-spec-tests/generated-tests/f64.cpp diff --git a/wasm-spec-tests/generated-tests/f64_bitwise.cpp b/unittests/wasm-spec-tests/generated-tests/f64_bitwise.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/f64_bitwise.cpp rename to unittests/wasm-spec-tests/generated-tests/f64_bitwise.cpp diff --git a/wasm-spec-tests/generated-tests/f64_cmp.cpp b/unittests/wasm-spec-tests/generated-tests/f64_cmp.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/f64_cmp.cpp rename to unittests/wasm-spec-tests/generated-tests/f64_cmp.cpp diff --git a/wasm-spec-tests/generated-tests/fac.cpp b/unittests/wasm-spec-tests/generated-tests/fac.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/fac.cpp rename to unittests/wasm-spec-tests/generated-tests/fac.cpp diff --git a/wasm-spec-tests/generated-tests/float_exprs.cpp b/unittests/wasm-spec-tests/generated-tests/float_exprs.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/float_exprs.cpp rename to unittests/wasm-spec-tests/generated-tests/float_exprs.cpp diff --git a/wasm-spec-tests/generated-tests/float_literals.cpp b/unittests/wasm-spec-tests/generated-tests/float_literals.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/float_literals.cpp rename to unittests/wasm-spec-tests/generated-tests/float_literals.cpp diff --git a/wasm-spec-tests/generated-tests/float_memory.cpp b/unittests/wasm-spec-tests/generated-tests/float_memory.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/float_memory.cpp rename to unittests/wasm-spec-tests/generated-tests/float_memory.cpp diff --git a/wasm-spec-tests/generated-tests/float_misc.cpp b/unittests/wasm-spec-tests/generated-tests/float_misc.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/float_misc.cpp rename to unittests/wasm-spec-tests/generated-tests/float_misc.cpp diff --git a/wasm-spec-tests/generated-tests/forward.cpp b/unittests/wasm-spec-tests/generated-tests/forward.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/forward.cpp rename to unittests/wasm-spec-tests/generated-tests/forward.cpp diff --git a/wasm-spec-tests/generated-tests/func.cpp b/unittests/wasm-spec-tests/generated-tests/func.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/func.cpp rename to unittests/wasm-spec-tests/generated-tests/func.cpp diff --git a/wasm-spec-tests/generated-tests/func_ptrs.cpp b/unittests/wasm-spec-tests/generated-tests/func_ptrs.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/func_ptrs.cpp rename to unittests/wasm-spec-tests/generated-tests/func_ptrs.cpp diff --git a/wasm-spec-tests/generated-tests/globals.cpp b/unittests/wasm-spec-tests/generated-tests/globals.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/globals.cpp rename to unittests/wasm-spec-tests/generated-tests/globals.cpp diff --git a/wasm-spec-tests/generated-tests/i32.cpp b/unittests/wasm-spec-tests/generated-tests/i32.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/i32.cpp rename to unittests/wasm-spec-tests/generated-tests/i32.cpp diff --git a/wasm-spec-tests/generated-tests/i64.cpp b/unittests/wasm-spec-tests/generated-tests/i64.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/i64.cpp rename to unittests/wasm-spec-tests/generated-tests/i64.cpp diff --git a/wasm-spec-tests/generated-tests/if.cpp b/unittests/wasm-spec-tests/generated-tests/if.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/if.cpp rename to unittests/wasm-spec-tests/generated-tests/if.cpp diff --git a/wasm-spec-tests/generated-tests/int_exprs.cpp b/unittests/wasm-spec-tests/generated-tests/int_exprs.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/int_exprs.cpp rename to unittests/wasm-spec-tests/generated-tests/int_exprs.cpp diff --git a/wasm-spec-tests/generated-tests/int_literals.cpp b/unittests/wasm-spec-tests/generated-tests/int_literals.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/int_literals.cpp rename to unittests/wasm-spec-tests/generated-tests/int_literals.cpp diff --git a/wasm-spec-tests/generated-tests/labels.cpp b/unittests/wasm-spec-tests/generated-tests/labels.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/labels.cpp rename to unittests/wasm-spec-tests/generated-tests/labels.cpp diff --git a/wasm-spec-tests/generated-tests/left-to-right.cpp b/unittests/wasm-spec-tests/generated-tests/left-to-right.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/left-to-right.cpp rename to unittests/wasm-spec-tests/generated-tests/left-to-right.cpp diff --git a/wasm-spec-tests/generated-tests/load.cpp b/unittests/wasm-spec-tests/generated-tests/load.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/load.cpp rename to unittests/wasm-spec-tests/generated-tests/load.cpp diff --git a/wasm-spec-tests/generated-tests/local_get.cpp b/unittests/wasm-spec-tests/generated-tests/local_get.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/local_get.cpp rename to unittests/wasm-spec-tests/generated-tests/local_get.cpp diff --git a/wasm-spec-tests/generated-tests/local_set.cpp b/unittests/wasm-spec-tests/generated-tests/local_set.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/local_set.cpp rename to unittests/wasm-spec-tests/generated-tests/local_set.cpp diff --git a/wasm-spec-tests/generated-tests/local_tee.cpp b/unittests/wasm-spec-tests/generated-tests/local_tee.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/local_tee.cpp rename to unittests/wasm-spec-tests/generated-tests/local_tee.cpp diff --git a/wasm-spec-tests/generated-tests/loop.cpp b/unittests/wasm-spec-tests/generated-tests/loop.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/loop.cpp rename to unittests/wasm-spec-tests/generated-tests/loop.cpp diff --git a/wasm-spec-tests/generated-tests/main.cpp b/unittests/wasm-spec-tests/generated-tests/main.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/main.cpp rename to unittests/wasm-spec-tests/generated-tests/main.cpp diff --git a/wasm-spec-tests/generated-tests/memory.cpp b/unittests/wasm-spec-tests/generated-tests/memory.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/memory.cpp rename to unittests/wasm-spec-tests/generated-tests/memory.cpp diff --git a/wasm-spec-tests/generated-tests/memory_grow.cpp b/unittests/wasm-spec-tests/generated-tests/memory_grow.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/memory_grow.cpp rename to unittests/wasm-spec-tests/generated-tests/memory_grow.cpp diff --git a/wasm-spec-tests/generated-tests/memory_redundancy.cpp b/unittests/wasm-spec-tests/generated-tests/memory_redundancy.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/memory_redundancy.cpp rename to unittests/wasm-spec-tests/generated-tests/memory_redundancy.cpp diff --git a/wasm-spec-tests/generated-tests/memory_size.cpp b/unittests/wasm-spec-tests/generated-tests/memory_size.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/memory_size.cpp rename to unittests/wasm-spec-tests/generated-tests/memory_size.cpp diff --git a/wasm-spec-tests/generated-tests/memory_trap.cpp b/unittests/wasm-spec-tests/generated-tests/memory_trap.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/memory_trap.cpp rename to unittests/wasm-spec-tests/generated-tests/memory_trap.cpp diff --git a/wasm-spec-tests/generated-tests/nop.cpp b/unittests/wasm-spec-tests/generated-tests/nop.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/nop.cpp rename to unittests/wasm-spec-tests/generated-tests/nop.cpp diff --git a/wasm-spec-tests/generated-tests/return.cpp b/unittests/wasm-spec-tests/generated-tests/return.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/return.cpp rename to unittests/wasm-spec-tests/generated-tests/return.cpp diff --git a/wasm-spec-tests/generated-tests/select.cpp b/unittests/wasm-spec-tests/generated-tests/select.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/select.cpp rename to unittests/wasm-spec-tests/generated-tests/select.cpp diff --git a/wasm-spec-tests/generated-tests/stack.cpp b/unittests/wasm-spec-tests/generated-tests/stack.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/stack.cpp rename to unittests/wasm-spec-tests/generated-tests/stack.cpp diff --git a/wasm-spec-tests/generated-tests/start.cpp b/unittests/wasm-spec-tests/generated-tests/start.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/start.cpp rename to unittests/wasm-spec-tests/generated-tests/start.cpp diff --git a/wasm-spec-tests/generated-tests/store.cpp b/unittests/wasm-spec-tests/generated-tests/store.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/store.cpp rename to unittests/wasm-spec-tests/generated-tests/store.cpp diff --git a/wasm-spec-tests/generated-tests/switch.cpp b/unittests/wasm-spec-tests/generated-tests/switch.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/switch.cpp rename to unittests/wasm-spec-tests/generated-tests/switch.cpp diff --git a/wasm-spec-tests/generated-tests/traps.cpp b/unittests/wasm-spec-tests/generated-tests/traps.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/traps.cpp rename to unittests/wasm-spec-tests/generated-tests/traps.cpp diff --git a/wasm-spec-tests/generated-tests/type.cpp b/unittests/wasm-spec-tests/generated-tests/type.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/type.cpp rename to unittests/wasm-spec-tests/generated-tests/type.cpp diff --git a/wasm-spec-tests/generated-tests/unreachable.cpp b/unittests/wasm-spec-tests/generated-tests/unreachable.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/unreachable.cpp rename to unittests/wasm-spec-tests/generated-tests/unreachable.cpp diff --git a/wasm-spec-tests/generated-tests/unwind.cpp b/unittests/wasm-spec-tests/generated-tests/unwind.cpp similarity index 100% rename from wasm-spec-tests/generated-tests/unwind.cpp rename to unittests/wasm-spec-tests/generated-tests/unwind.cpp diff --git a/wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in b/unittests/wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in similarity index 100% rename from wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in rename to unittests/wasm-spec-tests/generated-tests/wasm_spec_tests.hpp.in diff --git a/wasm-spec-tests/generated-tests/wasms/address.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/address.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/address.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/address.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/address.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/address.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/address.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/address.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/address.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/address.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/address.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/address.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/address.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/address.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/address.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/address.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.10.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.10.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.10.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.10.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.106.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.106.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.106.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.106.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.107.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.107.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.107.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.107.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.11.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.11.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.11.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.11.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.12.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.12.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.12.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.12.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.13.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.13.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.13.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.13.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.14.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.14.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.14.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.14.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.15.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.15.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.15.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.15.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.16.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.16.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.16.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.16.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.17.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.17.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.17.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.17.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.18.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.18.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.18.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.18.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.19.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.19.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.19.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.19.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.20.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.20.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.20.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.20.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.21.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.21.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.21.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.21.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.22.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.22.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.22.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.22.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.6.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.6.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.6.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.6.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.7.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.7.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.7.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.7.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/align.9.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/align.9.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/align.9.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/align.9.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.10.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.11.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.11.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.11.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.11.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.12.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.12.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.12.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.12.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.13.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.13.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.13.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.13.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.14.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.14.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.14.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.14.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.15.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.15.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.15.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.15.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.16.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.16.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.16.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.16.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.17.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.17.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.17.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.17.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.18.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.19.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.20.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.21.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.22.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.23.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.23.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.23.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.23.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.24.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.6.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.6.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.6.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.6.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.7.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary-leb128.9.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.9.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary-leb128.9.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary-leb128.9.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.48.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.48.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.48.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.48.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.53.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.53.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.53.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.53.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/binary.54.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/binary.54.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/binary.54.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/binary.54.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/block.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/block.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/block.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/block.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/br.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/br.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/br.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/br.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/br_if.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/br_if.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/br_if.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/br_if.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/br_table.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/br_table.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/br_table.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/br_table.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/break-drop.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/call.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/call.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/call.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/call.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/call_indirect.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.100.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.100.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.100.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.100.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.101.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.101.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.101.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.101.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.102.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.102.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.102.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.102.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.103.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.103.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.103.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.103.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.104.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.104.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.104.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.104.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.105.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.105.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.105.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.105.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.106.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.106.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.106.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.106.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.107.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.107.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.107.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.107.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.108.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.108.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.108.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.108.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.109.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.109.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.109.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.109.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.110.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.110.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.110.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.110.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.111.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.111.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.111.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.111.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.112.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.112.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.112.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.112.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.113.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.113.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.113.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.113.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.114.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.114.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.114.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.114.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.115.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.115.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.115.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.115.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.116.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.116.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.116.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.116.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.117.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.117.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.117.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.117.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.118.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.118.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.118.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.118.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.119.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.119.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.119.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.119.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.12.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.12.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.12.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.12.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.120.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.120.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.120.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.120.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.121.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.121.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.121.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.121.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.122.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.122.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.122.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.122.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.123.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.123.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.123.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.123.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.124.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.124.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.124.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.124.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.125.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.125.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.125.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.125.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.126.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.126.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.126.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.126.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.127.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.127.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.127.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.127.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.128.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.128.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.128.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.128.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.129.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.129.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.129.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.129.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.13.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.13.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.13.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.13.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.130.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.130.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.130.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.130.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.131.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.131.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.131.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.131.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.132.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.132.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.132.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.132.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.133.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.133.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.133.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.133.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.134.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.134.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.134.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.134.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.135.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.135.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.135.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.135.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.136.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.136.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.136.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.136.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.137.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.137.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.137.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.137.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.138.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.138.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.138.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.138.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.139.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.139.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.139.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.139.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.140.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.140.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.140.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.140.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.141.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.141.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.141.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.141.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.142.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.142.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.142.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.142.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.143.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.143.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.143.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.143.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.144.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.144.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.144.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.144.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.145.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.145.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.145.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.145.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.146.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.146.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.146.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.146.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.147.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.147.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.147.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.147.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.148.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.148.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.148.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.148.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.149.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.149.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.149.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.149.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.150.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.150.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.150.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.150.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.151.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.151.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.151.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.151.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.152.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.152.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.152.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.152.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.153.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.153.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.153.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.153.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.154.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.154.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.154.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.154.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.155.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.155.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.155.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.155.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.156.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.156.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.156.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.156.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.157.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.157.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.157.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.157.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.158.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.158.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.158.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.158.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.159.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.159.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.159.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.159.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.16.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.16.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.16.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.16.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.160.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.160.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.160.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.160.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.161.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.161.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.161.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.161.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.162.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.162.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.162.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.162.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.163.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.163.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.163.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.163.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.164.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.164.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.164.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.164.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.165.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.165.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.165.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.165.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.166.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.166.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.166.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.166.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.167.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.167.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.167.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.167.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.168.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.168.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.168.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.168.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.169.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.169.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.169.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.169.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.17.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.17.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.17.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.17.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.170.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.170.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.170.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.170.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.171.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.171.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.171.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.171.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.172.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.172.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.172.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.172.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.173.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.173.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.173.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.173.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.174.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.174.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.174.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.174.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.175.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.175.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.175.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.175.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.176.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.176.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.176.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.176.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.177.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.177.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.177.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.177.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.178.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.178.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.178.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.178.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.179.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.179.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.179.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.179.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.18.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.18.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.18.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.18.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.180.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.180.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.180.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.180.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.181.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.181.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.181.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.181.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.182.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.182.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.182.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.182.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.183.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.183.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.183.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.183.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.184.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.184.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.184.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.184.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.185.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.185.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.185.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.185.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.186.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.186.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.186.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.186.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.187.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.187.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.187.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.187.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.188.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.188.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.188.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.188.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.189.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.189.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.189.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.189.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.19.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.19.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.19.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.19.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.190.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.190.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.190.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.190.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.191.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.191.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.191.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.191.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.192.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.192.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.192.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.192.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.193.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.193.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.193.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.193.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.194.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.194.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.194.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.194.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.195.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.195.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.195.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.195.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.196.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.196.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.196.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.196.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.197.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.197.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.197.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.197.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.198.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.198.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.198.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.198.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.199.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.199.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.199.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.199.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.20.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.20.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.20.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.20.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.200.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.200.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.200.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.200.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.201.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.201.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.201.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.201.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.202.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.202.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.202.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.202.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.203.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.203.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.203.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.203.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.204.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.204.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.204.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.204.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.205.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.205.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.205.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.205.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.206.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.206.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.206.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.206.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.207.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.207.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.207.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.207.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.208.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.208.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.208.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.208.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.209.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.209.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.209.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.209.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.21.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.21.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.21.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.21.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.210.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.210.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.210.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.210.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.211.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.211.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.211.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.211.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.212.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.212.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.212.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.212.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.213.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.213.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.213.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.213.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.214.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.214.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.214.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.214.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.215.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.215.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.215.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.215.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.216.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.216.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.216.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.216.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.217.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.217.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.217.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.217.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.218.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.218.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.218.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.218.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.219.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.219.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.219.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.219.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.22.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.22.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.22.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.22.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.220.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.220.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.220.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.220.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.221.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.221.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.221.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.221.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.222.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.222.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.222.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.222.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.223.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.223.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.223.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.223.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.224.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.224.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.224.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.224.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.225.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.225.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.225.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.225.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.226.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.226.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.226.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.226.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.227.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.227.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.227.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.227.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.228.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.228.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.228.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.228.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.229.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.229.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.229.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.229.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.23.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.23.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.23.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.23.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.230.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.230.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.230.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.230.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.231.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.231.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.231.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.231.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.232.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.232.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.232.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.232.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.233.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.233.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.233.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.233.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.234.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.234.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.234.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.234.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.235.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.235.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.235.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.235.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.236.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.236.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.236.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.236.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.237.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.237.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.237.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.237.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.238.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.238.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.238.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.238.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.239.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.239.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.239.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.239.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.24.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.24.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.24.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.24.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.240.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.240.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.240.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.240.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.241.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.241.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.241.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.241.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.242.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.242.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.242.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.242.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.243.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.243.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.243.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.243.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.244.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.244.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.244.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.244.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.245.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.245.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.245.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.245.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.246.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.246.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.246.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.246.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.247.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.247.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.247.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.247.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.248.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.248.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.248.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.248.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.249.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.249.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.249.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.249.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.25.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.25.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.25.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.25.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.250.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.250.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.250.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.250.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.251.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.251.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.251.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.251.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.252.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.252.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.252.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.252.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.253.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.253.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.253.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.253.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.254.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.254.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.254.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.254.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.255.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.255.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.255.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.255.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.256.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.256.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.256.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.256.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.257.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.257.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.257.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.257.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.258.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.258.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.258.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.258.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.259.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.259.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.259.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.259.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.260.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.260.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.260.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.260.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.261.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.261.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.261.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.261.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.262.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.262.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.262.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.262.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.263.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.263.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.263.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.263.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.264.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.264.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.264.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.264.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.265.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.265.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.265.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.265.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.266.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.266.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.266.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.266.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.267.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.267.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.267.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.267.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.268.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.268.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.268.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.268.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.269.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.269.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.269.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.269.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.270.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.270.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.270.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.270.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.271.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.271.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.271.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.271.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.272.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.272.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.272.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.272.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.273.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.273.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.273.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.273.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.274.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.274.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.274.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.274.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.275.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.275.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.275.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.275.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.276.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.276.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.276.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.276.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.277.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.277.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.277.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.277.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.278.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.278.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.278.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.278.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.279.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.279.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.279.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.279.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.280.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.280.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.280.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.280.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.281.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.281.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.281.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.281.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.282.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.282.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.282.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.282.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.283.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.283.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.283.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.283.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.284.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.284.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.284.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.284.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.285.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.285.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.285.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.285.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.286.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.286.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.286.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.286.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.287.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.287.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.287.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.287.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.288.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.288.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.288.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.288.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.289.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.289.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.289.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.289.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.290.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.290.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.290.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.290.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.291.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.291.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.291.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.291.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.292.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.292.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.292.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.292.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.293.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.293.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.293.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.293.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.294.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.294.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.294.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.294.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.295.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.295.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.295.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.295.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.296.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.296.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.296.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.296.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.297.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.297.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.297.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.297.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.298.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.298.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.298.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.298.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.299.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.299.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.299.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.299.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.30.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.30.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.30.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.30.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.300.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.300.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.300.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.300.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.301.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.301.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.301.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.301.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.302.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.302.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.302.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.302.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.303.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.303.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.303.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.303.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.304.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.304.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.304.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.304.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.305.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.305.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.305.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.305.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.306.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.306.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.306.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.306.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.307.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.307.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.307.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.307.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.308.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.308.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.308.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.308.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.309.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.309.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.309.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.309.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.31.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.31.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.31.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.31.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.310.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.310.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.310.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.310.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.311.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.311.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.311.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.311.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.312.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.312.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.312.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.312.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.313.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.313.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.313.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.313.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.314.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.314.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.314.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.314.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.315.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.315.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.315.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.315.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.316.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.316.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.316.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.316.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.317.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.317.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.317.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.317.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.318.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.318.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.318.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.318.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.319.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.319.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.319.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.319.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.320.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.320.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.320.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.320.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.321.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.321.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.321.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.321.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.322.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.322.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.322.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.322.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.323.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.323.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.323.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.323.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.324.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.324.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.324.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.324.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.325.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.325.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.325.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.325.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.326.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.326.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.326.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.326.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.327.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.327.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.327.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.327.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.328.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.328.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.328.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.328.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.329.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.329.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.329.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.329.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.330.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.330.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.330.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.330.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.331.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.331.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.331.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.331.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.332.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.332.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.332.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.332.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.333.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.333.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.333.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.333.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.334.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.334.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.334.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.334.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.335.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.335.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.335.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.335.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.336.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.336.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.336.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.336.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.337.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.337.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.337.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.337.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.338.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.338.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.338.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.338.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.339.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.339.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.339.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.339.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.34.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.34.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.34.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.34.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.340.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.340.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.340.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.340.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.341.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.341.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.341.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.341.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.342.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.342.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.342.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.342.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.343.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.343.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.343.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.343.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.344.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.344.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.344.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.344.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.345.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.345.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.345.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.345.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.346.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.346.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.346.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.346.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.347.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.347.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.347.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.347.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.348.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.348.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.348.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.348.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.349.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.349.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.349.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.349.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.35.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.35.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.35.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.35.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.350.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.350.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.350.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.350.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.351.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.351.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.351.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.351.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.352.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.352.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.352.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.352.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.353.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.353.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.353.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.353.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.354.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.354.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.354.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.354.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.355.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.355.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.355.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.355.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.356.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.356.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.356.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.356.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.357.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.357.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.357.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.357.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.358.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.358.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.358.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.358.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.359.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.359.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.359.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.359.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.360.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.360.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.360.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.360.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.361.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.361.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.361.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.361.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.362.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.362.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.362.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.362.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.363.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.363.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.363.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.363.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.364.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.364.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.364.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.364.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.365.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.365.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.365.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.365.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.366.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.366.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.366.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.366.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.367.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.367.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.367.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.367.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.38.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.38.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.38.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.38.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.39.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.39.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.39.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.39.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.40.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.40.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.40.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.40.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.41.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.41.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.41.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.41.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.42.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.42.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.42.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.42.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.43.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.43.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.43.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.43.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.44.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.44.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.44.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.44.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.45.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.45.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.45.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.45.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.50.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.50.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.50.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.50.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.51.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.51.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.51.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.51.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.54.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.54.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.54.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.54.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.55.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.55.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.55.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.55.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.58.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.58.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.58.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.58.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.59.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.59.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.59.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.59.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.60.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.60.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.60.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.60.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.61.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.61.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.61.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.61.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.68.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.68.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.68.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.68.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.69.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.69.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.69.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.69.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.70.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.70.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.70.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.70.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.71.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.71.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.71.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.71.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.72.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.72.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.72.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.72.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.73.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.73.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.73.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.73.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.74.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.74.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.74.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.74.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.75.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.75.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.75.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.75.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.76.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.76.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.76.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.76.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.77.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.77.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.77.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.77.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.78.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.78.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.78.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.78.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.79.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.79.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.79.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.79.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.80.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.80.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.80.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.80.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.81.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.81.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.81.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.81.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.82.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.82.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.82.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.82.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.83.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.83.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.83.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.83.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.84.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.84.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.84.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.84.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.85.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.85.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.85.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.85.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.86.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.86.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.86.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.86.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.87.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.87.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.87.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.87.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.88.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.88.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.88.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.88.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.89.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.89.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.89.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.89.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.9.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.9.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.9.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.9.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.90.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.90.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.90.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.90.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.91.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.91.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.91.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.91.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.92.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.92.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.92.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.92.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.93.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.93.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.93.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.93.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.94.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.94.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.94.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.94.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.95.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.95.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.95.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.95.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.96.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.96.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.96.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.96.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.97.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.97.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.97.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.97.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.98.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.98.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.98.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.98.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/const.99.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/const.99.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/const.99.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/const.99.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/conversions.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/conversions.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/conversions.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/conversions.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/custom.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/custom.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/custom.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/custom.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/custom.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/custom.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/custom.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/custom.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/custom.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/custom.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/custom.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/custom.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/endianness.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/endianness.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/endianness.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/endianness.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/f32.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/f32.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/f32.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/f32.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/f32_bitwise.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/f32_bitwise.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/f32_bitwise.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/f32_bitwise.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/f32_cmp.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/f32_cmp.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/f32_cmp.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/f32_cmp.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/f64.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/f64.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/f64.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/f64.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/f64_bitwise.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/f64_bitwise.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/f64_bitwise.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/f64_bitwise.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/fac.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/fac.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/fac.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/fac.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.10.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.10.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.10.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.10.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.14.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.14.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.14.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.14.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.15.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.15.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.15.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.15.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.17.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.17.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.17.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.17.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.19.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.19.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.19.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.19.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.20.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.20.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.20.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.20.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.21.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.21.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.21.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.21.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.22.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.22.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.22.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.22.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.23.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.23.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.23.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.23.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.24.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.24.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.24.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.24.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.25.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.25.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.25.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.25.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.28.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.28.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.28.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.28.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.30.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.30.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.30.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.30.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.33.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.33.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.33.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.33.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.36.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.36.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.36.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.36.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.38.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.38.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.38.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.38.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.40.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.40.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.40.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.40.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.41.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.41.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.41.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.41.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.42.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.42.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.42.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.42.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.45.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.45.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.45.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.45.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.46.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.46.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.46.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.46.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.48.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.48.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.48.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.48.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.53.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.53.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.53.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.53.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.54.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.54.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.54.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.54.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.56.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.56.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.56.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.56.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.60.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.60.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.60.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.60.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.61.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.61.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.61.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.61.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.65.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.65.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.65.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.65.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.66.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.66.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.66.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.66.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.67.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.67.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.67.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.67.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.68.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.68.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.68.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.68.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.69.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.69.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.69.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.69.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.72.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.72.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.72.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.72.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.73.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.73.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.73.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.73.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.75.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.75.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.75.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.75.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.78.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.78.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.78.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.78.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.83.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.83.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.83.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.83.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.86.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.86.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.86.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.86.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.89.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.89.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.89.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.89.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.91.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.91.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.91.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.91.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.93.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.93.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.93.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.93.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.94.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.94.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.94.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.94.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_memory.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_memory.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_memory.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/float_misc.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/float_misc.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/float_misc.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/float_misc.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/forward.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/forward.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/forward.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/forward.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/func.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/func.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/func.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/func.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/func.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/func.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/func.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/func.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/func.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/func.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/func.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/func.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/globals.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/globals.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/globals.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/globals.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/globals.17.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/globals.17.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/globals.17.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/globals.17.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/i32.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/i32.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/i32.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/i32.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/i64.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/i64.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/i64.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/i64.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/if.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/if.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/if.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/if.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.10.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.11.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.12.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.12.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.12.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.12.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.13.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.13.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.13.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.13.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.14.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.14.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.14.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.14.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.15.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.16.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.17.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.17.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.17.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.17.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.18.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.18.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.18.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.18.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.6.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.7.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_exprs.9.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/int_literals.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/int_literals.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/int_literals.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/int_literals.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/labels.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/labels.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/labels.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/labels.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/left-to-right.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/load.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/load.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/load.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/load.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/local_get.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/local_get.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/local_get.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/local_get.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/local_set.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/local_set.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/local_set.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/local_set.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/local_tee.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/loop.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/loop.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/loop.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/loop.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.25.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.25.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.25.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.25.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.6.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.6.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.6.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.6.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.7.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.7.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.7.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.7.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory.8.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory.8.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory.8.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory.8.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_grow.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_grow.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_grow.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_grow.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_redundancy.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_size.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_size.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_size.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_size.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_size.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_size.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_size.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_size.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_size.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_size.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_size.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_size.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_size.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_trap.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/memory_trap.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/nop.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/nop.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/nop.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/nop.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/return.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/return.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/return.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/return.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/select.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/select.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/select.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/select.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/stack.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/stack.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/stack.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/stack.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/stack.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/stack.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/stack.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/stack.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/start.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/start.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/start.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/start.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/start.4.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/start.4.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/start.4.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/start.4.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/start.5.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/start.5.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/start.5.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/start.5.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/start.6.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/start.6.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/start.6.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/start.6.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/start.7.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/start.7.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/start.7.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/start.7.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/store.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/store.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/store.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/store.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/switch.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/switch.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/switch.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/switch.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/traps.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/traps.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/traps.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/traps.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/traps.1.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/traps.1.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/traps.1.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/traps.1.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/traps.2.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/traps.2.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/traps.2.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/traps.2.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/traps.3.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/traps.3.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/traps.3.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/traps.3.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/type.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/type.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/type.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/type.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/unreachable.0.wasm diff --git a/wasm-spec-tests/generated-tests/wasms/unwind.0.wasm b/unittests/wasm-spec-tests/generated-tests/wasms/unwind.0.wasm similarity index 100% rename from wasm-spec-tests/generated-tests/wasms/unwind.0.wasm rename to unittests/wasm-spec-tests/generated-tests/wasms/unwind.0.wasm diff --git a/wasm-spec-tests/generator/CMakeLists.txt b/unittests/wasm-spec-tests/generator/CMakeLists.txt similarity index 100% rename from wasm-spec-tests/generator/CMakeLists.txt rename to unittests/wasm-spec-tests/generator/CMakeLists.txt diff --git a/wasm-spec-tests/generator/altered-wasms/address/address.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/address/address.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/address/address.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/address/address.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/address/address.2.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/address/address.2.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/address/address.2.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/address/address.2.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/address/address.3.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/address/address.3.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/address/address.3.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/address/address.3.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/address/address.4.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/address/address.4.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/address/address.4.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/address/address.4.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/address/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/address/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/address/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/address/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.1.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.1.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.1.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.1.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.10.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.10.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.10.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.10.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.11.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.11.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.11.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.11.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.12.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.12.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.12.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.12.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.13.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.13.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.13.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.13.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.14.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.14.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.14.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.14.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.15.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.15.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.15.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.15.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.16.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.16.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.16.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.16.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.17.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.17.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.17.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.17.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.18.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.18.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.18.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.18.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.19.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.19.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.19.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.19.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.2.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.2.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.2.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.2.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.20.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.20.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.20.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.20.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.21.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.21.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.21.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.21.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.22.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.22.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.22.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.22.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.3.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.3.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.3.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.3.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.4.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.4.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.4.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.4.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.5.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.5.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.5.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.5.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.6.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.6.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.6.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.6.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.7.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.7.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.7.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.7.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.8.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.8.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.8.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.8.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/align.9.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/align/align.9.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/align.9.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/align/align.9.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/align/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/align/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/align/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/align/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.10.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.11.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.11.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.11.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.11.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.12.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.12.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.12.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.12.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.4.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.4.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.4.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/binary-leb128.4.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/binary-leb128/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/binary-leb128/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/binary-leb128/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.cpp b/unittests/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.cpp similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.cpp rename to unittests/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.cpp diff --git a/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/br_table/br_table.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/br_table/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/br_table/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/br_table/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/br_table/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/func_ptrs/func_ptrs.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/func_ptrs/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory/memory.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory/memory.1.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory/memory.1.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory/memory.1.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory/memory.1.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory/memory.3.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory/memory.3.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory/memory.3.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory/memory.3.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.cpp diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.cpp b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.cpp similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.cpp rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.cpp diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.1.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.cpp b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.cpp similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.cpp rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.cpp diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/memory_grow.2.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_grow/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp b/unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.cpp diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.0.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.cpp b/unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.cpp similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.cpp rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.cpp diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_size/memory_size.2.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/memory_size/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/memory_size/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/memory_size/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/memory_size/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/start/notes.md b/unittests/wasm-spec-tests/generator/altered-wasms/start/notes.md similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/start/notes.md rename to unittests/wasm-spec-tests/generator/altered-wasms/start/notes.md diff --git a/wasm-spec-tests/generator/altered-wasms/start/start.5.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/start/start.5.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/start/start.5.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/start/start.5.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/start/start.6.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/start/start.6.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/start/start.6.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/start/start.6.wasm diff --git a/wasm-spec-tests/generator/altered-wasms/start/start.7.wasm b/unittests/wasm-spec-tests/generator/altered-wasms/start/start.7.wasm similarity index 100% rename from wasm-spec-tests/generator/altered-wasms/start/start.7.wasm rename to unittests/wasm-spec-tests/generator/altered-wasms/start/start.7.wasm diff --git a/wasm-spec-tests/generator/compile_tests.py b/unittests/wasm-spec-tests/generator/compile_tests.py similarity index 100% rename from wasm-spec-tests/generator/compile_tests.py rename to unittests/wasm-spec-tests/generator/compile_tests.py diff --git a/wasm-spec-tests/generator/eosio_test_generator.cpp b/unittests/wasm-spec-tests/generator/eosio_test_generator.cpp similarity index 100% rename from wasm-spec-tests/generator/eosio_test_generator.cpp rename to unittests/wasm-spec-tests/generator/eosio_test_generator.cpp diff --git a/wasm-spec-tests/generator/eosio_test_generator.hpp b/unittests/wasm-spec-tests/generator/eosio_test_generator.hpp similarity index 100% rename from wasm-spec-tests/generator/eosio_test_generator.hpp rename to unittests/wasm-spec-tests/generator/eosio_test_generator.hpp diff --git a/wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp b/unittests/wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp similarity index 100% rename from wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp rename to unittests/wasm-spec-tests/generator/eosio_wasm_spec_test_generator.cpp diff --git a/wasm-spec-tests/generator/generate_eosio_tests.py b/unittests/wasm-spec-tests/generator/generate_eosio_tests.py similarity index 100% rename from wasm-spec-tests/generator/generate_eosio_tests.py rename to unittests/wasm-spec-tests/generator/generate_eosio_tests.py diff --git a/wasm-spec-tests/generator/generated_wasm.py b/unittests/wasm-spec-tests/generator/generated_wasm.py similarity index 100% rename from wasm-spec-tests/generator/generated_wasm.py rename to unittests/wasm-spec-tests/generator/generated_wasm.py diff --git a/wasm-spec-tests/generator/lookahead.py b/unittests/wasm-spec-tests/generator/lookahead.py similarity index 100% rename from wasm-spec-tests/generator/lookahead.py rename to unittests/wasm-spec-tests/generator/lookahead.py diff --git a/wasm-spec-tests/generator/picojson.hpp b/unittests/wasm-spec-tests/generator/picojson.hpp similarity index 100% rename from wasm-spec-tests/generator/picojson.hpp rename to unittests/wasm-spec-tests/generator/picojson.hpp diff --git a/wasm-spec-tests/generator/regexes.py b/unittests/wasm-spec-tests/generator/regexes.py similarity index 100% rename from wasm-spec-tests/generator/regexes.py rename to unittests/wasm-spec-tests/generator/regexes.py diff --git a/wasm-spec-tests/generator/setup_eosio_tests.py b/unittests/wasm-spec-tests/generator/setup_eosio_tests.py similarity index 100% rename from wasm-spec-tests/generator/setup_eosio_tests.py rename to unittests/wasm-spec-tests/generator/setup_eosio_tests.py diff --git a/wasm-spec-tests/generator/test_wasm.py b/unittests/wasm-spec-tests/generator/test_wasm.py similarity index 100% rename from wasm-spec-tests/generator/test_wasm.py rename to unittests/wasm-spec-tests/generator/test_wasm.py diff --git a/wasm-spec-tests/generator/wasm.py b/unittests/wasm-spec-tests/generator/wasm.py similarity index 100% rename from wasm-spec-tests/generator/wasm.py rename to unittests/wasm-spec-tests/generator/wasm.py

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π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 RlHjlh?VPL75_i)1e*yG59hm?C literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm b/wasm-spec-tests/generated-tests/wasms/f64_cmp.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6a72337b62436014df8715861f18e9ec4a551714 GIT binary patch literal 314604 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�+;v#HlI(!$ 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 Sy!NECex>xj!W7&bM1KNejLgsg literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..47db3d5a142628648dd9e58913b1c1cefa1a2ddc GIT binary patch literal 1451 zcma)6T}%{L6uv*RyTi_|jHrm<&pEK_t_bqG!vf0Az=MybPrk7mf)$V-g*3F;?2v}G zSWP6xgbhZtO`~m$u`!i~O=v+#H4Tx6Mw&igi&1QiO_TnmHcjcdP1>X{q%Zr;eEXgI zefQ2emnHkVIb)26eF@>ZEFoRj?oG`#9$w$r<VbKyvlU{ech)qQyNju-4bS-UB%31Q4z2iu&@Y(1+#sf z_Tb54B8TIOjfx?{Cc?9ELomZn9PoERTrnoRMViY~GOeX}TBL;gf1Y?sBWGmx6^>jj z)rA5?h}nP4FqAEg*M9jpII`G`nsf8%>9_Bn`+a`OMGpw@STe(%PoDppxpDo%)OQTM zM0zbb%AGgnUffyDjK8CEdtm0})Id6w*RR%XANzW8V6Tp4a6YLg|8EBis*te_9KC^(M!uo<>MK4sZTs;x1Z zP*D(KX50h2VNVkG+MiLBFzkgeMS1k(*3{kapDi_Dgo-1U ztaFBMPh4ERv%Ey#ZXa>`ELq`PeLVX3{MYwxR$(borIrjU?>gMCpaRPjgs~jd&)s?rqeMk5X*$c9XKzk_ky&g+izv&Iy7Df-It3=i6zEtFbr6Gk zO42~8hL~h33ByKc%;G^f2wD;k!69sdCXl92H8hUjJH&F0Hg2d^7q*F#{*Ya$ zffl0qp?=oDQ_pew7}Xq?rLmM?k=7+XRBPN{f2w(Hj+%AuKfXIgG}{2f9T& z^h9XqIpn6lgnmll4>HqhP>lhGsgXl~Y6G1ZgrKrFKH^@cCd4RerHiNazZVZ2OLm-q mO2$;@uA`_T1vS(kvVWsIx&dzcwx>d4-|#MMhC z77of7P+FE>SQ2KA#6m0c&%o&jmzU3&!x9poXy-PVN17Jrv0hAhihDA}ERm!bFt14R z3Z`5|s%mCWN-oIJSxd|(9ZtG5#}v#=q#W>-AfEc;@rA&*m8;2P}?<@Xy$6??zdl? zi|r|HZ;2+Znm&H=IgTAD?qG?=I6yPUj(Ttt$4*)sId+DQ&0U9`V zfi88}H6Z(T&BN=UD_j@E>(vGVxB;$*8wlWolg&>#up6~?v&2EJ4!v~xeTm&E?rw<# zTrK^&=4AtWP~5{3`{MuyIf5R1fFo+%&#@-}AoL`FUR2r3C-%ev_Hayv)H>`P@RhC^ zi+!Ls^aU9F}!j0f1fS-S8Y?hctZE2R+&DATHE`Jokz7+Sh#15`jy?JVW1p86k z&l20?0J}NfqzCWd*k9{*jsxH(=nn%3;AX14*(bKf0k(2Xhx9re7zpr@d6)qMAtQ)` z)O!Sw34Tqaa$?9Mp4uhdEEQrHZGXdnlaLDnv z{f(clyZUSE)>9`KD(Y3XT*Lj(oci(TqfIN%9b@RHq~De+xPS3$yJ|k(wz?sT0m=nz zSxZCuQ90&nUBPjL)>@9YLN1JeTRl!3NtGkBcBi7x19&^! z2DgXt4t0T$M#CL2nvj;(9Qg6<)g`CTGaN(xV{BRFZ&}jt&V~h#pRsW)rN-K_+`saz zSC1`Qv+K)~4D%?LXUl1Neie?>QjT|OnTF$G9NY=x31$LSO~{fV%@V?iFtHvd<#xTY zH+$_Xp9JtOm;`r)@orT^=X5gM4U-AwgK-~ql^!Yb0 zKfUwN_AeWPSV*ZtTc-Pex^m%-eLH^HwvXXMlzYgQUOn80@pqGs({<#k5 zsj4_j(wRz=fHPo5J(lEN3M^an{fUMEmO=@XhOta-B9w9{gK|Pyd*npT{-!JIXvR$H zo@vW2{%sdm@49&T*{@m|&Z68bTYCJpC*HoWcj@ukVyvK4g)QBBco(eH;=zZtxN$aA z!ox6|P#&SGN3tZ-C=9EhsvhUS95BK-7v|zTmBKOccd~8t#4rT4oEmXHi@7|rJFkGk~TRpc!hy3 zKcn640=G?1=t!d{PoQb;@t8;yiOJ04GO5P|(__$tB!A&2FgbKewPR)ejld#@4ow@5 jO%DBu+i-m3(0{58CyN~VRGJ-bEl~JvngXfW#N@ zC!F{wBm`}70Exa-S4myfDwww$1OPlA)D$Ds9Am^-1JtMtukpIZ10HJby6zuNp19e* zE1F&VdN-T5ZS(dLpqJ83vuT@4K+Y@?+l!D`!{DQew_B|gpP_&6hBQJfy?2kR&W&f;%>k*UHeh`)vZ(gw!^4B97x^0`g;@* zTzL{2!Nu{<{P+c)gYG}APlP1V2ZZiX;f`Thejo$M jp8K4pk`JM@PH&vJGSP%WZ;PcL%CL`jIcjk(DFxs+BPLxd literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.11.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9fbdacda52ae9433609bf92ccbffe89ba514527c GIT binary patch literal 535 zcmZWlyN=XA5bTG?`WBzRNZq~q zdlV2{c@i4K#qrPl_ywMW?mw+hge1`igzix8jhMoms>Bt8&|LSR^6OP@(L zhU>0l6RAu37!IN~EXk_BA45T61S-C%fE5=CRB;x1FC%G5iI@o`-d=#ZS;_h=bDJ|i mkbz`R{g9?I96@27-Z*hZq6xX)=1V`4Q6KMysKvRY5P;t(L0=^R literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.12.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4168638673537b8b9a6e7001eb21b9495ef5f02b GIT binary patch literal 793 zcmZuvJ#Q015S^Xfz1#Di<4v5eBE?K_;ed!l2xp0gT#ASi(NfqJoTb=KoZtw7lz1aS zNx=`{N2H|U7a?E{kU+o{_jcaBnRzp}Fr1$#08qQx0AqxKjxnk@02nBV)RmmorM&cF zvG^lKMqQo0%B$J@c-9}z=he##fSO89s*`zj0ZL~MQKt?eF;<-^rL0zTYeBaDTVo(a!N>Pfm?*Paf=mD{zyr zi<{h_275A`lc)TMo7ChbTB0O4k=dROgm-k{7PUgc5>SxA>eQTAlOK!qyza5kHsZq6eY6-bq{&RAzU@GeQ3!f^Q$W=- zS;C%nQZ$icQlNO~qT%!qWJxKxo(8fz+DX%l+*59di$)Vd>LtgM4@NrVlADj~mDTP2 m6Akt5{Z?P@Q2(zxM5E#Hl5j1 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.13.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3342061c90a6850392e97eec00ba4fef188051d3 GIT binary patch literal 793 zcmZuvJ#Q015S^Xfz1#Di<4v5eBE?K_VL(J8gtJ6LE=5F%sF7>~XDPN5CpbbNCEiF- zQt(6g5he00v4Tbtz|cAuqjH zEdGd*QCBCg@@h6en)QeCdG+!fpr(@J>UdtAgVLEp)Tu*Aj8&&fDXSHzWL-y9UR{Ha zP=5Li>3!WE-P_$cne|7r>5KkJ)t^_>5!m*q*!zb~?C|t-`UbMbTjLA_?F*&i4JgB8 z8%iiJFM*(oc^9Ef$K~s@Z6V+7*KC1Tf)54X?|THF3PCR^TRK z7dN><4fbR>Cr|kyH>t@>v_wg8BC|am2yg4aEoy~?C7>XK)u}lz(=x9}YMWN5eaNe{ z%4@VnIyiB86^$1u7*78A5*pTVS$ZW}weE=;1RiGnt2U=oZiS>li zGj_O7t||Kz-=>RB3}@5`;H8xKCO;PIdEH~7ZN!DC`)Dy>NRydJecOQ`qY(7;rhuwv zvV=YDq-Y|?q(Je|MZ@U<$dXcWJq=`UY9~!Ia!fgi|zX5tbO}p);8+}n3F~E^naX~`EIxV0BLqjR)bfrK#cdH@~bnbprE`0 zh6&{pg32zd_pi?cew_BSprhzB(N9xH;H)r)FTeGx`-X{%)KR1Z?MaRXs5qbu;VKZ* z7%q;t@8%~2^{2R&LRZrGVT0-Q#)gE6lY&l}9@1&BY`wWB$P_f{(I}*x-XdKp&-6(7 zFyMht`YBbav`1;kI1?lxoM5*MIp<@z<2q#|r|uIfX=+xiSHZ9ugBKHqQjJ8gKW&)g zTm=%z^pP~13F%-jKr&cPO9gBmh?m%N`aEPbiXs`tLMw>`CzzQ)*o&G0*Yq!Y+2ue(y>F-F2=}MwNOe~tw2Rjv{&W!8>Ak} zhri-_x;=XR>f&ZT7|o|wgRASi!Lpu?z_v%loBwfShl|DZBgDyf?F{5PEtK-lpv)(y zP(p!O2?Sltx(KBkm-p{a1%B!WTHsdnt?1`|ijX>C1YiE>*Yp7+?ajt`vo`>IxCxkEb3Ad<~M`4!j={%sEbINzf z^mH6h%!hQiL%OFSAmAf95+vImOY`xV+tltrE8S@8Q4S)f&?T`UO=iNDYzJ~NAqdWv zRB*F|;vnlr5=I3YvRyRn{HT&+@;bJj$p(gliq9`whi`a LqU29glM}#iH#~UM literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.16.wasm new file mode 100644 index 0000000000000000000000000000000000000000..bbeaa1febefad53041836b0738d29d8cbf8921a2 GIT binary patch literal 1766 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.18.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e023907a4c3563077838b0d227dc833f61d66cbb GIT binary patch literal 2343 zcma)-dr(w$6vuy$yAQY^Yo(!&Xru!lp zxw>!7ny)2ZMD<0M=p=xS&p%m=7gK$)CHBSvKIM3cUfjvCht|Cud%`8q19}p`rR2Oc zAU=!(e8@2sQd_WBXktSkAA3VD=v|0?)FuMB4En%j1n~IjhdLMG<0h{{Rkk9oM{2k76)kKm=5VJ z*gy2}%d_)w0Q83eg?OdfNdSJh68r@4(R)8!sKX2z%do^7T;1EgVhhKCR1dVocCL=? zI=SD2gQy;4iEVL!H#lCU7jNe{SnD>9L*ObH3_}QDC^?4)#FjV!-6<0?TQDoMdvaku z4udQhR*1vZAp*#T;gC%Lk8C>IT!$lQY=kA6x%z3}!(VW;sJ1NeJXb4UcygD4Hr2Kz zo{IxCa}4Ok&vVSt`W(lR5P%#QNdTkBIVvF5#{t%Jyc(`-L1f1~t;;!Hr?rXW7|4U`V2sa=W63!-M>dc%gFbN_jBCZ~^HLuF zxUKWlkr3Vh*TW4F9IsZ=*|-tL!;M7LzH#ZYd+tB|eowrK#&5D^ZSd9gCtvS4|JLaS z2PaT(f-S3pZHIn%a?h?as~a86r(V7-XY2j7SfHf}Z`Lv!Cqe<-3=;|F7INK^Bg2{{ zjJLwAt$14=i~k)C;Uu^XCPi?vY9^E^Fd3#0%I?FvSG@Z4x~9zz-cHlE+j2^9^_t(d z{CIHli!V8N2lei-WkK-NN6&or!N%{-Ov6HI720x~UOokCE@Y~Aqtmwj+PwdUK>7d-dY*#jFN>};Ek)zqrCrB|;`#TqR> zT%g5^3!w%Uz(NAKi(Gf*NTxv;)<`Fw!abDOe3~jbte#+!9_e2D21&D^7{(2G2b7id^s}GsP%M4ZrYG zlIk2~Cf&-UA+t;;sNPX8U5==a$GTKN3nUojbbnVm^HF#MqpyI3(_@nedQ`fpn=UEG ziNP-n^aL3tw+Fm7J)tXuo;-oJc_(5bQ6wfapU0#b6HK2$8wu{@Cw5XTRs3&)wnoy)0By z&KYCeiVKQplm%rp8s*U-V?nN~#>Ph87?j~~n1_Qh5{dk!Cs4@31q%}jD{6`>3PLqC zh1Io;>6Wv+u)L0oA*sl8o)ife*QE*d*# z)PjnF>cV-|6?K&bbBh-il-HFpM{<#s@lRhk9ihs~vIZ6xzr3H@U><2&oJWT+qJS3N=?`>8>S~kWM09lVu8K##0YCi1l~>dAa!!bDx=RM0r?7 zjYb|7jgCH4L}kPX^N0xlzbhU#2p5_9h9lSeOHqJGW$LjmhBA9;)9!6m>}UWD_4eI| zTI$gO0vwk3f~%(wHUHXxPO6=j=;mtWSI>?_7nLqc9HYk=MkaJ??dBM#^%%!^a6=r# zdmLzz)AWgt$myj|On`(|Obo2fV^gsoBtpM@Oj7GQ75yU&O5TpByq68pJ2`gQlV z#dsdo=UHMOS0^8M_0D=6O!Z((?1=&F=LmZ7K8~n$562V$Ku95gA>tg?BZ(q`>$+v;xMX*Sz;$w zy*<6RJ8?MG!!6Mk1K7oJgkHRp<4CP-97n+j7zv{Y;6id<=o2k5fEJGFklu=;14(uL zb8!rehB5g#R((kT888+y2;jNqwJ*4E9F2{$L=#sJuK)Rnffm)4CAM<)Lu==T2-;NJ zme>*lXyWM8i??#j)VhV^c<@0cj3W)I9>!7wc^Er?#;nmoCp`g#C)8j z)^sw=f=Q6&ar;|7KCyb|t>1JGMMa~^miKc1W6M4{^>WjPojarGr>5VQ>$v~Pj?S+2 zPyh7g01QwsV9QmsV>sC{TkATGmuOwZ@lwc!OW;zE6DN~%a;98D&NTYO9LQMYA)E&Uf;WD^9gj3YxM05pAfh&mUowd7{ZuxZMvUeC>N%L3QvfjV;`JYI#l)XKHxe7(LN^R!grRa)lbG{}RiU>dPpO|GjmWl*C8 zaXL(I$7`}#?C+xhUJKX2wIRGty-FlA;5wK=B)@eZ_~3Z+j^!yhlZI#7a)!UN>#c9Q zKD=}L35M5G?|NJ2`G0Os(%XI&PC)?V7dHAV~wK$Jj^K9wWt9=;zWzw-&S6(cE`A`fc1X4<_ z(o9L`DNO>FL0LPNXKz?P`AF)oJpo(*<**=x6>1gbRwYzGC4ubidHm()*R<{#gjFR=&}+(fRMG9}X_4C|r39UGtlj1Vq@MYtFigQUYkff^=bxC9%aF_k5mbGWIaRwxfj z`a+hX0Y)l?K830Qj`1vsgj>Q5#z>ZgPQ@uso#3iMx5xr_B2$cV)bI*7#i$NZX40)p z8Zt|CeCiz$>4=I*EYhU{S|GtFrTaTlnTLWK82tt$oSvIR(4*2#opebVP7GdQpv%uF zwq4-1=?NWa^yG20%{>j{i6TCcd0ZyVm|%Jg+K@oA2_={aiF&=cQkqPswmGAy8;sFtoMiUB`R)7jd%qcI504Z8sLetP^Bh__&vTWx09r~; zYOKaBHBzINo=hfxoRLv?j-Mr+!SGvvU9sg-4yEVdor_F2smBiV?!Vs1v1> z(F#q5{0J zGvYq-u3zu$TbvcT6WJq`)K?N677V0Zd+ef2#&`J%;_NlUde#{(eAK&MIf|`iP zh5|D8p)5wF7*lW)${c2jBMK=x@^WG|&|ErM{_wLox&nnaz-DXeS1R@|DJh!W4x=9RrSbL4=MdZfGF0Ci95U6z_3S zSQJa(A}cu}vw1K;(4Wum@B=+%K4`^+^$G+)m|~Vl zQ4E-0r1%9>o-)-~lR?epdAe(frKD3ySLd06naR`xelv)*e_Y-JVxzgo%r+bzlaA5M z9ntLSM};HfMvTWr?EhWym_fM6)K?t2-d~OaL?%<4dl<@m`Ulb9`yn*cD>uK{)`%_; z;IhPLTs`t;>n}~{rrK?ZUanSr@z@yjQ0cM60S;mmnb51Xmt&IF100jV3rUddbD>F2 zGa%k4r=MOi1yb5EHKfoxT6Tl#H4ho2U34nbZ z2gBfYJTAmq(h6}190x;+aHx8a0EWR(7)Ah(9(?VI7#>e!$6I1AS08@ad*2c~f$9@1 zv4^WecRqJxBMzr}xFvQa0QPbOy?75t)Vhmf1^^&r5Wom>jtGdZ1V9(ZOvr4K@cdv`1O|@-_O$mUl z90Pjs7LK`EH*uT<0my|(1TdMLlLKNy0$>BjQ{mKhJT1hQI)yj|PJ<~$I909gW|#+4 zAuA zM7@wLSJIBrWXF81YdD^+btT6$ARkVLGkk75lbmPf%BAGYqE{?{f=)aufA*AcN!`=E zAv_z-g0mxdj=GL(R;Z!9bQmv!3*n*&UaX!Yl38#u%p#Isd-uI_uyxzA47`MfFR|sUV0X{UU-!Iw z;{!i3yp(#E+H!jEruTWiT7&z-2^IOs?Ww znWsteFbv^NjO1@Fd22|Mh~Q#aj7wk%NIEPOs4+6e%CH%lGg+EBmzz3jh4P`K zH)J^)U}RG0Q>Yr?n#9sbxFx(`jA3c$R-EG04W1hGiahY9GQ}uI4ZrYGjOq|&CViAi zLuQ$dPrV~9U5fp6H(gSO6N6tE=m|24 zZ4Y>DxMZF+MrMCrp$1q-mPm^fBh+R9OP_;sKwfoL;=#CxgM@&s>2*W-nY4 zm0eVtSCr*1EzMq3#+b5fh1rFr*=3B&2!{~T?hwpovGQWhxm9w;ZL!kiM#UcHG?{U5 z-@nB^MaJe#oG^A_QP!etTCiwdp1&+R%RhfUv&QCV$^U7G&FU{MUa*WsM1JgYSeQ#X zHO|cu%y1P9X9m+ml)-?-i>P?P412z@v}8D$RjJC=L!KT1m2;vkK>(6uW*cqk#Gmx z3GsxMK$!%$xI~$F+Tth})rN`QOKaZEz|oKhqcd@g(Mf1yVGN8VwCg*6({9Ca6dR|B z3*6Yh?a)3eCQ+TFiF4f8_(fxF0LN23UK2gsSn=l8kE}R>>Is@S6GpqhaiT&w$1z!H z564ML&v4XWA|%5k&4%oMQA6+FdXO?jp2n zAAGgdj(1b+ZcUuzM)hYGn@zlj>U%WN#f>dpr$Tm|O7&Dt9OXuH>#N@fF_r36O?(dC|w*qN{@2%D*cpW8W`XKFQgILy_C7vEsliIj&Pg?)7tPpufF1J2ByP(ke-S6 z8})k`J^=T_11^VWb6ejZKDqR({bl$dMIY4V9`1RiX7#oMbw@5=V)zi559zXly67U?D4RZ*% zySw@AuTQP47>Z9&{0Ut)a!>b1bIHrqWv*xM;fA{N$0|dam`7HgE`6TgwS2Xu?wvQgyBOw^m#@n? z3aJC`948CVR(9axe!z{DYr;=g-w5tP6p zKb9J239}4Jp^PvqKk9kyn`1re>1Vl^(u;MO?%DYIFE4-C{@$0PaS2&VbeZbu-qg3g z^G}^eT1R{_XToYp31Xt zbv5nSvmqC&m03+D-PaQ(U=7uYauC*r)rG$Zs{`ve&@OVxsN=-GN(EQ(6v-4l!+H+& zyaQk4KyQm5S94g+aSaE0OS%KlIBHOl2A+>=IjrSzEXFyHJJqlfh6^R_lLcr2OB@YP z8cP>zBkR@I?X#UW=aWN+?<)n}^pC(Y0 zIz~`hO%V(aMQH#XK!T-!*0;tn7mYq(bec%ic_9&WCTLL`eWWQ!4DrH(b`PVuX9tH) z-`1KS9dytLaLmL=qKJ%UF1wR5PH?&`bc86%M&;Aci&lqs)<`E)!_7G?iyld`e*Q=T zIsUu_FrG0rXZq=yKwX{vc1@%%y8HICRx)+bjj*4tNz_GmAJwHL|5tjAy68{ePnS+z i^q=de%S~PMd+(lyG<3+%ny@5~buI$9%~Z+X~NWwa<^UXaA{PcFvspo##8x z_jf;Y@16Tx<}JCglrg3(TYhGKX=WMYGSn`F46zGlvsif%=iDke$P8!h1ZFTzgc}T4j0ler%m~Rb%8MtES)HO>O;nQ3A+1eu287pUSTn(jk}J?naAoY(v{rw1NPuCf*jtS0_$g6=hN<6zEX8U0^tbLKrw8+-b!K%0wiIt(1wOEslXP9T@4} zVn!@PCq#lX9j`Nj-3+gX>)?8)-S|A%(J1f+irt`zdSO&uy-FxIQhlQ)>V)y@;kVY8 z<4siGq=}#~{&A{(lOLm~j-oR#f>tl^W`$BGaIDgxz+05o3LFPF!&tZl#u3`Bl({uY z1V+#T0&j!cI`DS);OSWl@ea5h?nuY+#vVcg7!N>bf9?JBJ%LCuq?0d$kEtWE|N#a||#LyNe!{iQ(bN6oDwE*viIJi3`DbFY5cZo_!0<2CU$H-`RR)#t+msuMJEmKzs_K0EKjX;e?s#NY_p5Xb2X&X=2Gb!CW`IU$I%V`E(LaLL&oK#-IxyK?v*h>!oC(P=GaY9c7YS`P%!1j3 z*5CO3P&wX9v3oVq$Bl*)Ti+3QAJzA1;y5>c+jTimfpe&yqlshO81DS(oE1~3PSM1X z5wt#zhC(^c(WUelN4L@=98F-tYdgpmjc`!Tpey zjt>~M?=yT59)Jg(c2{N9pH8*~-fG@#;zN{uNSEE*wWsmjueyIcf60drllQPLJGrZ& z|NO67E}!jeF>yYb^L4qGyFMBC&5rX&x4n~%3&>lb%NE*k94&zhm3DGmq;xOGN0hd3 zTnr0g5j+Bmoi==wGLI(9?Uae7EiQp2UHDk)dre2WJ`VP}aVb0oOTGBGv5SD0!Q-%u zfPdfHu&MPA?QMMwpP>8`x~wO-jom%Fh7X(^k57{Kq%MQp^~Sy*hT5+j9jGxeoy>Gy z2Dt0HbpszZ?r!|ji%*gFlrAerfa^IvtpI}@pHUj%n4z?iqX(XbXCMPS1ni}ZH(8b| z-g0~vp6$Zrss6U#&Hk*v$Boaya(K>*nZ_Z)&4NtGBHXos&en$D;lBYsPvPfvS>$Ry zz5kOhj$W)U#ua3((B%r(wZVTLJ+tA1-A>FVD_fTy*QJ)mGkZ3l?3#-?Waa2`nF1=p zTqP?oPl*Tfl`O*o$b~$}hXR5ur1rvONe4bwF2W)x>cZmGahv<*wOl&r#u6xo5-*k- z=LoV4N}-G(ukAh4Q}f-sZ(d-ylF}=6nMN1J`fdCEyyM^`Tt(I@U8cA`|F*yP^%I@n ze9Z6#@?OwolI!Z3%kAx5-S6)=kq!%#>yrL)aWV~8D@nmMN|NwJCGl7Rt6>ei2o=QX zqjq1ij8U91=m&onnyLPh<4ZTUU2r3v7ZWPE7uRwlK)3EH4r@77aiTr-&A`s#=I)jR ze2GpTyu@`0uFip<_8r{um;Ga~TA9^kj&=Po+}d1qde8oRd|8<2C%rjiA$ zGg%}F*MuD`Q&=S03{K<71|h|07b#$mps7sr#}Xs#G=6B@IGKZ%a!|;TLjx#W?ZYpv zrtpu9L}>u+K!PQg*0)A8Crv(JbeKrgfgureBxq3^eWW2s3^BrjAudK^F9hs5{aS0R zw9`&Q!M+&7h$1Y4IYS(jae%{Vp*@6CHav%BUWD4cqeeQInr)8p8T3Gs@$&}~$ns|A zK>}lH%#6}Cjk*qx+BKcJ=;k}hT8Y#}_rX!RW>6R1d{mc~_+RNY>Z1SrC|x>r(VuRV et|aQB>wT22Wa^>^8VCGOu7r4MV-8CiGWIWOK%iM5U%c?*_qv0+hd-_ysB&iYYb-nV0PC$yyNBlG@Ot)cvrD4unjh`g&f7~ z?14iLIiN`Vg4`nIF%$-`nsyStEsm5ND-0h zPgix4P}L+!qLM06Rbi%{sb^KSqE@P=UaxPNYtd%v@zd1J6>226We@M>J@;jA z`~$=~crSNsh8&RxVLBP znxoMFAox=v1$Y+<=89FkB1JAju>`DCGG(h+mJuFVlQSPL#aTYXXKQjU{tlPrJfGw9 zTNH7vM&UhLFh#3alrop07z2w-CT|t_Yq_WG?arzW7mQSuVlhQo-b` zNKP*EWr!d~zEUzcv0lS+m9MVJHNM7vO|J8GxxqKs3w>}>1=C^uI^-tb3{#ze+=2-$ z6v{2W)r6da0lClka+_~AAyY79A(C+(2V^Vh4!rNo$X&kMLv6tqDzG)C<4_C?W>y?_ zdQj@(vcv8OwV_jy_Src}Z73)u9;euQBEBxO-+~7P#pL9)j~Ys&iYS0o0H4*JYJ%3R(DOXQYK&?DD}&oyHr27qxQ&FX+T4FDOsf9?tOqkuAmT z34OH))w6h7U3@7z0c2e~RL;_Dnh9Ym3rcV_UxT=0P}Kvq_{V5R~@UV?$LNCoE3 zf<+ctxXBMlW$lU`8+G9({~?uSmf5BfqxsrFB}s)_)wjF9^PR8H>F(21Sy@y>q`J~& zog`E?Ns_3fOjK5wsSUMJR_kiLY^v4juDKR%rk^~^PA{#@E=^WeR;IsNC9+Uzae8rO zdX4M@RuxSx1?d1YRQ=F;|AXM zNE+kkuSh~}{vms*|65+I3M4V6MVvkb29!33a9ua zpQ7%T{1n+PG~?+PU3^a60}K0%!O%pMe0$SuoE=dck@x zNRD%%+hX^uwk91gbwv8HH9eMdd~V0|mnWStbw+y1nx^DDpWiXP^W*|d7b0D@rm}Q# z7fc_I>Gwgo2=m3fdC0ocJd|$k4pY(ttfy$kS$CLm>E+&S>8l^%yWfVTpZmDKBA4P# z9BssxI12qwf-e)v!#kfhBUW)l3S59<5m>QkN>;HX13a)Tmp@;MD}0%+ROD*>0~D|E zRlc@M5!Y%E-h+8lu!;pKaS4hsu()Wttzx$f@zAym^RNx7C%5<(L=Yp76b(+S!?4`u+uL%7@33EyyL?yf@jdoJADmR)G+V!BxzG2*R0|+C zZ$b-&GRmWM$jKX!JB=@6JXVKH-jIbz#(5l&t)vI=elRB!Jkd^#!51p9HKyZG3=C#o z9Cq4K>f*A)?f^BSQ<3)Bxj>C5C?y`J*n29zF0tQ0F`<~8oc2*eX;cvfkP6@w%-Q;} zYgCP!=&EDaF)?ES!_GYP-F6C*36o9FWo1)xStAXIrZ7xJ8ZqRwBOZ#`XODfGklTSA z(^$=)kPM>8G*IXT@Ci5w9juUrZ+1=^xWO(TywGX9A$V6$OyV7#{P#P`GnLr|?jf?( zxF@F<9Ms#MoIY?+QhRdx!NKjdoT&eQ;wgfI`xu3$g6vyxKX6u{M0ZJ)bIj0nuvUcOW85ZfADNvR|*$V|`hAwmgT4-b1r0rl* zV-+NY6sWNZ79_-AtQlxXK`2B6!Km;-6pUIV#A<;UiN?qWJa056YOKzOIdjhWpZB{r zbMODLP|Xg`7~>g^pa_RqP=>={9u6`VA}kwuSTrjC5k*)u$p+peXyX6;;tdKd8=29|k<&VOB?=HJ%s6y~q0G6{ zvi_S*H!k^6F*+VUf1aZS1Xwh2fgA6@oZ=V{@ev&1e=GK09wxvDNGQaS#@mER zgprU)nEQQ^?m8SrW1}>2f*alY?hMr9Xv#-x;#d@Og5wwybByCy7z1MoGmiS>Jfb6t z>EM_INf8|H_nsNZLxAxBg^0#=!XyJiGGTst(B0aA6KHILCfd32b?>Rm3Z_t=qKURB zrk&$N6Vt|V5=?|igqckJ$sW-f#k6vCgFAw$eq&ARa-0IGFr^Tu8s8FT8cc<0g!$yT z*FWYsoyMlqsp3ZS@vgploI&{vO|(QY`#8=tF)bX^U?!vyCY}1}9?=}dG;_>=j0k4> z_Xhg%Fbgsvs}N@y&6gQ!Fbg!7-FIOBk5Aq|)Zdo+0bM5g9z>2`c(db3KP@0gwV*EPhE0`;7&3zkw?YWE60L}u zMP6w)X?84z;vOu45>P@|3Z=LWwt=MMN8UmIER-9Smv^+G^2v*Qi$NBS!V^tLad2b9}AV4&ZUkE(3>Oh_csTWhRU}? zI%B5o464Z>4SB|(noQErg&$OtMH;%TgKB1xhAx?@(X#$!%^GRwY7DB;Nka#EP>qK) abPNa8cu7NV8Z~K<^`xhfh^dMP8T$<*P6v|! literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.26.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f6b7df6ceda79b655628ea29e6ebca1057213e53 GIT binary patch literal 1167 zcma)*ziSjx5Xa}u+h4i2ms>R^rzU15S>q)p;?K=tW1eRvNWk`l+z~FAA7^4Nh(U52 zL_xvA#=^ovu&}W@w6Ka`BZ7$7DgFaif}Ix5MzB*-EVJ+XW>` zg6p_yMJeTK1JaP1@&{kGfmv78B>uZgf)yC|+tY+&= z;JUK0v<^Y;hwD2KX_F|G4ug#rhrmLDp#_2xh9v~+FW4K`hD5wQm8l7CN<1s^{**y5 zIj8_^o+Wr_-snCjm9I;2`_cc6YQvF^4E7i+0#b{NgfZA>uYq-C@XVEIcI@ZPkDqR` zOGs{lHYfkfi+DH4Ve87GYP(K}@egQqY|LVEN z15z}QU{40>;e&KgK!c(UmNCje5ff2|xzhdh?L{6UrlBei+gtLJVj8AcK;Iv4y;$c% zQgld+%RnKI(1?Hzi*~q-K?VxAM5PXo(kMAq9-}cnLPtnT{V|pwOXCYXK@%|)%&an* zF=!*!vY{8*Atx5+#RrGnGf8g pFVS&;YzB6gd_t1N=ba^=lw|R8XUV4|S#HP9l21!A80P~4{07I~@+klS literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.27.wasm new file mode 100644 index 0000000000000000000000000000000000000000..64043a0daca9478c82fab44811a0812484223b2d GIT binary patch literal 1933 zcmb7_Yitx%6vxlKcXoHSvvr4ed7o1jSXwCC2eZ57(VgxB<+YSoLQ<0M2DYIuDBWsm zQaX(yU+@7&Vn|eohy*nu+QdgOQX!fc1SQxHCPY6NHGD9^_#n~5c&;SIL?i7clRNi6 z=l{F+&ffnW$QQc>0Ent!PI?~Xl;?TE%K_vB_rzgwI41_gKu!$~4*sJrNvgtuM?!^z z#rA`(`C_rq+XtW}e|Mp~Sm*Z{6 zs=TeXrs@FWdU|>f_P2NE`wFeSg}v?E+neudEgs@Ae6!n}I$hNEaPi+y{XX_~Jqp2+ zTS3zRTUm|}-U4v#&T??Uks%ilqB0bf;08L}{zK&~9!Y7{kwe@zaQkG+l3-bo1{i8U zIC0VnLxx`x|L$`C^jYiKK+N#?y?FAlzSIL+>4`x(ps(@Wi2;KrP2dg*5(p?dNurE^ zd+!R6%Di=K-XCkgBn!(zPgxs$|`>71e zhG}N{wI@zzX%^1JSuHf%{fddu$_1Ui`UrAF9R%1<`YTfUdSckP($Ha^8-8gdn^3!kL z0$RcD6>*i)#1uK`Ffqwr)FJCQ#~fJK2Iy%W4tR?;YwV^ z#4pYqIsftx?_T;CXf?Z6$5l)dW3&d>FtLHPhNOyWVw6&t8X-3`y6O1o+^!pGYD5zKHnwe?9=rio?LgiRx~A#=6j z?uFlvew3z-xB)ljX_I@4iJNf~Zf4@^?|ks>&o6!Y)F(h&*u5pLY)!N&i&-XaWo>Ix znVM))Gd7RVHr$3rp0?w5+JQSz@xRK^*vW-EJ7^c~ia^-fD=Zxv>Dr|Df$Ag!jR*&u z<6)q$9>UxRN1A9XgE0AB!5Q&m;1HQIg=Q(A4-`ZrD$V-|vB6@L#U`tRV-nJ13@V=| z2mcDEa*+p6Xmm2)7Xh0ih!E!&;X|QU#G#BUlc9dT^*fU15S0c68iCUoKr^lYeR_pK z&ZD`VN_Z9}rC1y29FS8Z>WQFS*nM(ZYv9PY^};xJ}X=Q|E$Eee0vvG1L%BC zz)`~v4&nqHwd~-;O~6sd4vy9Y94pwt(Xk?}`~lD_|E~|g{UtkG%9$8XX`D-WvyZ1V c!KJ*5$5Wc*Qa-A!g%6%yDbosxh9k8RO<9J|~M7=DPhBwp;8jVTEK9^VlF-WGA3@ zf(lv+78cen*l3|>BiLAqDA=f#AZYKI2$n*M;mrJ(|2uc?e=fATD+&Nq>^Ct@p{dg} zRcRBTspLy-sja5&^?H9_kx{p=Tn*c+-Nn^LtJ`gFYyxDGx6)qewl_iPz(>>`g6p_y zO)2GS1U}%A$jA0qU`b+lOdP&5a^O>69w$uw!Z_gV9 zW1tGKeSzS?J@ZD7IH~+&iaU?~Z&h24v}CX+SP_uwFcQXKU%Ud=)y}P<8awv&+qXYl zb_vN%aE5RSXV@bza@iNnuV9(5jAafe=<`7J*_f?yjs_@KXJhZa1P;ki82R?j`$r!% z=f#vyFwQ_R@1Z>cDu`C7AY~xph@w94t$sRxqsIGaFYT-Ie*0WNgS4Lp1@z_ff}22dbUtl^P$U19Y&?hwN7YjnW|+70{D+zn(gL zSWJf#9Lzw2JVs*zIwIPU3Pu?yVj}7@S3ggz)wo1Vr8dvZuIjZ-Y3pC9i(^!ccm zj!JSFDC7y65YREvj#V(oKmnJj+~-M}B&W_(G{w_2OvT3n`+ l0NEhy!f{F*lK3thr^O-B?!s|K9CBlJ;W#S}FwS=Z_yfCD|J?up literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.29.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b3f325012228cf2b43c3ea65455e626d161dbfb6 GIT binary patch literal 1728 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 PK9|f4(lAxYK*oLr(2@8h literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.31.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a6936619b8af76901f1f40888e6590780a8bd1fe GIT binary patch literal 2082 zcma)-YfKbZ6vyvlc6VSvR#C+FIf%N551zBTT5)F=6<>fTilXkW0`d^SVjG$+EH%Vx zN+VW3s3BHUt%@`uVvrDP)tI)%SZi%eO`6)Iw#6njv}$5Z6MJUcH0g`>%bvOC{LlRE z$=>@P7Hp{Hj4_@O6%gSt3&?Od%)Wvwl*Z7AQtxQtSTkTz8?t775xoO6rhj9U|Am>VsZm=(G%5cPMOZY;5N{UL@qeCpNTKZ_GcIxDCcg#+h-7B8U12D5o2D#!RJ-%4 z4;ACf3&)Rz&;kN1y12lN-aYRgQP4_jt1kLDi0PC?n;H8!s$c`vZow$3N4dl~sypZx zqanHnHQ&UP+yaaN4Pr_$)@Z-Pa2UkGFuQ8(KK$X8MvSAjI9+sea$70)!;O?EmE9*8(R~+hkoFr1N&-#=ciEnbyg=I1s@cHk2j+u^ zXm8y8^vsicKXfLbLCuC!2E0EGyx#WF#rLm{MlYqjPFZ470_ZbC3Fd+iatXG8iVNJb z(1aD@LRi?3i*i|G@$=5&ULWScBFGEkVxx~>OJFf9F-N<7OBz2#y08!m`*B4s`59{&pwWt8 z1r!BwrSUn@R>4YGMYPA?-P+qb_)}L77E^PvQ>J-4+RmSR`@NIs!YV78SJy(A62uCqz%8%^BppBU4*FxEvKp(PDw)M;o4IDXiZJXbsUT}m0VSFIjr>Ca z%N!O*f$KsAWhRS5t6>_46>Qs46&_GynZd|86o*jBFrpyZ&NO6VWlngB9gi%CO zi!hpY5gp6yHjR2T(Ci8kVyHK!8e<{W#A^?P#!TnZ#{21e;s49`0xE)4TOpk>({+ZD zWRQd$V<<@`N$9o@CCMTQ-PEBZ*(9OsWlHp{f8MT661o&aNt`61lRT8fMG`uGLrL5u Up%08U;otX?o<quM}kYpa1{> literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.32.wasm new file mode 100644 index 0000000000000000000000000000000000000000..0c5dc0d9552df4b005d5ad639cfe652237f13f6d GIT binary patch literal 2084 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 Z*Pp~q68gZXasR%Slw{H{RY^w1eg$(m1nB?( literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.34.wasm new file mode 100644 index 0000000000000000000000000000000000000000..0ae7bb9cacced790bc115e986e0ac6a2052b6f86 GIT binary patch literal 838 zcmZ`%J#Q015S^LbyIXtD@#e$GMTBO93j-n&COQ)ud>&{5?F@CW!cVJ;v*0#>@4-FNe5-n?7r&!-3gxLN8^o&^0!`>t;$4ZaJC?vY!FI)m&by2E zTU!_4o&d$_eE79{Z@*!zbFn0+lj5NqGg@GV3oWfZr0kJ_aqNky0qLhR@aiYMv+H$w zetsVLfQf^I)|sx+x(_*YfsX`>Zd0A9Np)}7eD);~b9&#Gxy0qi-llJ)Sj?7VXLh7c zv8uizyh>X+rt8Z2C0=r&uL@S(R)*=SGTyQK;+J`ub>FY>ieKebR?djjHOX5W`5M<6 zP_<9c7Bf)lypj)U>^19#7$JH!2X~+<0TVK;Z$Q;84wc-Y^Y W@J+b*aYa(H^}nQ+B!Sfr7~nfxWtDXR literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.35.wasm new file mode 100644 index 0000000000000000000000000000000000000000..82256ca5bd00d746ed3226dfc520e1286d9cd5d3 GIT binary patch literal 1176 zcma)*O^6g%5XbAi*Izqt#%aIS)m67@c3fv&7fduWj+adDdhnD($i>r46Gw1AoYh$* zfo0l54mo&G5OUbXV!sV4$zg^G7XU%@i9AQ0Sj!3{k>`Mq=ST_yU6 zcz|=M*yQ|ek~~|^$KljJ7a!dF<^J=B{Y(nTF4W9HM?5I&cpZpE_=EoBef%@YW@K-!nTjJ;WRM3z+ydX0 zx?x9T8RDV7Yz47(ckDZixQ(~+wp50b2Ow_eVcrhn)hic&y7l7Mo9J-|vUk+XkRuMs zPTmRP2z(=T6FXuo%-k0Nap}dMpPFC@(uL33)#DB zCUV3`#&`_G-SF+M8*)UF3Rn6v&g1N*vWNG`1W&MuL$|HH2;4g(lRR0bqWxT1w@01C zV(`JtipO3V!oadT_771JMpbph-Xs+zNE9{}aCk~0-QcJI&B*|J6&=0XRZJErizGXP zh2>q1p7Ar?d#e|dFbWv|3y-jMHW+)O*SUkq_W5|zrie0mAy&Gdz~_y#LS}Wbie(c=bpZO&Q)`3%a&5g zN_lxI7FFIZ7K>IfuTk3swP8~?4>=M?ct?=C{54I9_LqxAv(z5he+-|NSAqO09nNTFDNs~HzzyUxzq3w+5jse|~ zUA(I-yA5bk>UlTUXJwE68lVQ=!wmpgvKI+^Lz*>^S!v`(K=wh~7txG?%t#YAm1RF5 zr2%Q?{oI_D1Nvt`4)Os$2*_ves%b$|OGr}&G$qUokU*1&#tmp(TDi3>ZQN$cNa^1| zIK(MF1j6?Awk?NYJ{;1B0gT8IJ_0}*S~{X(0~nU0e6%d>Lw{{=kIFG_=VMvv&@aDJ za-2K(c!l%%x|~4LiI4^jXi!e_Nq{<`bw<>0K>gCiU1jOU-@?B1a5wj4rB{CiP#^bl zA3*pbM?&O;Aw`B0Nrp4v;DMuvdJU&nPVuR-oHqMACTI9GpUFzU{t2A3+|Oq#oEPhI z4oT-iLJjTIDFZwJ5US(Bh&l|YLp1BMoaghVk|F&o2*W(Y!&XSUFNB2cXs5JX zV;cGlo`J_KQxsIgkAvGFMquk&d0NsRkGopF} zs+U=wEz2#wWh%L?e*_`Rw>euOd@ATrz7tYl0D;`)y8zsSb}yo&0VE~Ixw7Or&rVk6 zcuwx~eYTN~$$J3fg9VxA`IM^jA6UMbNz#GXcwsM!!%hkZ118X6_q3`*utJKnb6nL) z3|;SWjJ>B4N0Y>BapqtEoixQUc{Q8}ln<1TB!2<(mo#f^+HR3H-_5?Q84K9#EQ0T* zRDdaGm9ZNUtc)EXP{xh}8pCZYB-D^5N4)b2)9!IRV=H!#+Hove!|`cJpo&DT3SvHT zeD(teDHOu?I*eDZ6fZvk)?^Bf@&OKh@Zl%n8S8?^gg#oVO>V*qKTE*1| z7e=s(D})R4RmGKo3)54@6~ToGsp2{X7uw(F|J|>yPT0`h)ofj`p@pm2%=W*jZZrF@ Jd}m9P`Wr9Uy!rqD literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.37.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ffb5d6fd68cff876f106789d38dcae3ba096991d GIT binary patch literal 2010 zcmbVNTWnNS6g}tMJ2Q9YPU+=cpupaxz|akJ8r32CZ7bI#s- zowd$A`!S+>ASZ~e?CZ*8bA5x^uH5mVY^JL_lM#W+CwRM#^yP9-4`wqW80hZrKk=*xM}Cc1rf>{9 zE~URfcusGX@I+iiJwYO-qA?}BP>(lsstV3Ct=bz`!&uj0z0hhaVTa)(d2{q?X?K$( zcGs+=>C3zpQHU%jz+uG0t{O!= zhF^|Qq{w!%=iUq3I7&7}Q(Wea+!8#A%4m{fwSDvH!&{$SeRCA*B$>^T;9$zXgbYE@l5X{ zXjRZms({uTf4%bc@OLlWb$J$!&Po{Pq<8m=Yi|wlY}m7r%aYVN$#b;S8OfD2hbkd8 z7xB5S8ZJoY>tr zV1ujDS|!bm)L7&dk21fKR?x~6H+jRi1;?q0;*JF{GJY5f>Y!6I9p;4Q?PQk{lUucp;H*)87NU|K^hw5G&_e6|COG`DJ|c3!KQT6rC6yQ)$%Rq_tnQRGhQ z)Y;hSok!j7qMfv>#Do{G02p~d?bfIY-mRG&-b1@-5195MxYt!t%@pN*w6DnfX+N1M zK0pWfARQ#bv2N6OZOV!VnZ#VptFjleLQ@xJ9H)I3XKn zY_c5_3Q?Sm_HY@MX?go~!xnll*p*#R7}9jK`}hfJ5JLC!c#uXw(1+teRsez~8V|A( z5OlzJkS0J-+V;XHUH9>S%AcRI@@gzBTdh_1qevT&oeUW%EcElm9^UP+QMS3R(Wm% zz?M?gO0`zm0Hu8oQKt}G$5rb}DOW2{sSceevv~)C1k4+E{|#Obwq0CXSgKUlHYy9% z<;#_&h1&B^gX=D?uU~i({PbI%=Rl}~SgE8BOt{($24c(@Ac!y%AsBDPT)xyR#cL&7 zjd4@r6B4hN0)(JNYNYnIKL~zv`kh48RYN7}3f5JEbxi(Grs|FyhQWLRtnBtxM#4Op z&AY&Q=62@EId-Ps|N839tNSnA_!QVBB)6c?n?H75e&ljW(o~G+2#57~_6UdY9Q)*v zAG+Kk&6XmT2qP?Un$k@UX12G!oaGD!l$qzOdF>AHAA8&oG`M9LVW6WDf#3w8y&s}tax&(4k znkS1$7DC)j-A(S9S^8{xj){7R=9$esf%FnnuRw0^y}k9QdGp@m+$V#51>I?`y|@2B zv23S&jO`ZE$^916&I8m>0|GfE%~M5`+eR32L{XCmXPSQNEDzBj4bAhgc_@(6G)$)j zvitk1-`{xs&0nQ7B9kKp?VE?&_xBt=Bk7qK9ZT`~tfe?SN@rIy4x!@TUSfii`SxZB&vO`W@3@MIq$bAfQ5>$*n zIU|tclu_b_6nU4}7X$cN@w)iIiO?4#v`{*PKvo4Z6s(9HGM3TMZi0=!45$eEae~Qy`igXsjR3I|} z1)(E^jLc?MI7?ZJ4?a>Uu#OD67XIT`re_zIFVGl(_0vI;agm4{4w6iWM84%gl1Y)s PPk4}IN+b|CTLkbY2FMXw literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.39.wasm new file mode 100644 index 0000000000000000000000000000000000000000..dfaec36ff6427cf017e0f095820aec4b82195b09 GIT binary patch literal 5353 zcmb7{S$tGQ7RKw;?M|9>LM~gt{TxIMAV>lx9bCvIsJJ2SXw)QP5WgrFO;x6?5m*&zf8jub5mrYaYg{h^ufwpZZRHG6MRfIrSr_Y6ys1EC(Vhgo&kM2`^gRH zljhVb*Z2H~eh^c$hNtyObKt*|SgmYJJK-OGVfAT|(gmHeNz6GGC{y z*0!e8&i!`1sQv$RO$~aX`RYXamuaEjZE5e@-lL<23;G?pargi2zvrTZ(>C%Sog1(J z`+o>g6Xi8JLadmki)KAYd7mFt;&@6z9NHpbud%W5H%Bs9b4HQ=6Tjj+RTd*VL>ehqF1y&9krt(i5_tMfw*D`$bDG=K|)U z)s5*B7Is2QFYc9;-eszB%uUjVdvl+1>FcEc>&Jb$pPT19`q@H$){@70Zie(nYyX%& zZXw6D4B!DtIfKtIR?hT}L46jV$!GaiPA-tM(f{lseauphX*q|_0p(n@o*UCgE#;_| z^Z2}^Fy^I{2s2B$4D?p)RB}EK30y67NSq zM(`y(qTRwF3pu2vfD7D+6arEh(=8U#qGcqHOv)%8Wh`9kE!(A}h%eVrMHfLvfTV z`AWBkj6v&|5@$VH2jeKET$&PZoLNtG^6N4g%N~!dk}~fopyRlV$9014NXS*tUsdd^ zvD7tMuI8&jy#}qgy2o^P-dg}qf4 zv`Wj3e50Es69Ae};xt)Mla`zKrj$(NiN@2--X^GT;hXuEw5JpBbSp%+7CTEVYN?jn z_%@(!N9*k+PNPLNYPo~&NXebPCrnl*@tr)WO78NGf_gXK#do)RI!R{9PLh;!xf_*x z0J^8dIf2%}ILf_zZ%Xdt`;4aw@98~CD!GCytr|;n+^Ub0RB;v5_d|VuiF4GdkCII0 z$tihYoH}{x)TsrnWm3%#aCMbT@iqhWAWz{3+ie`Npd%zxd8(T&(*T-Q;&D@hI4 zq+~izH#TN?|Acxb&)}I>jn!ze>K2k&JPYbtsB24{W~*){spGno%;wo<3Fdgq_9}_< z9FAKx?k=CB-w+&SF3)vyq#o+}nBI!kd>myS&r8Zf{E)eN=X+bAewgR;!&Z$Aw9%?J zl03qXK)nF!1u?zes@Ib&I64%qJ8WSt@=ZfM&d?td&;9|;72K@ z*I2?DlE;W2qoh1ei~fp$rHqjiJu@#!Y+EplHMU%LcGL~o;0Ke2I8fhdFpcu$Ga$O#CvruDoK9uK%?z#EErY~q{Sp}62ECkW}SF7NQebUjU;aozXj4?iBYg%ZiFcX*j(D3jz<;!nx#EgKAF11J*> zWuhdBlc3LHq@|ePp|#YzJk8p^T6n#5+J~CPsmmo#cH6$}Zxa z#Jf7yCErl;WjFC|L)l{}dq81BVcAQ(7nFT8PMOcIxXtV*-bcKjs-%Uy{{VS_xP|yY zhp_<$IY15)A0)T0d})wh0*PE;u;a=h;zL0GjTi;Sz9MfWvXifgzasv+W08=C40R&X zO5AEF-x$g_peRF8@-6YVp!}T}C0r$ki4T+fgBZmznSdkT8Oe84Bi|E$PlHr$bTUOv zdZay99Q@}@H~G*Y#Y(~);_zsdi;9YLghRtru4H(GoG61cXG=tvawJE23h7WNUq>X1 zdvKPkqCiCIF*u E7ZdrO0RR91 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e1bc63ff3f4d338faa643ea0f23efdeb66d568c2 GIT binary patch literal 535 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 S;(rd(@>;JK^YaII-oF9Wx)5Ff literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.43.wasm new file mode 100644 index 0000000000000000000000000000000000000000..684b7c7e5203510b1c2e13511b3adee5cc541081 GIT binary patch literal 5174 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 I#(Ca<03d(ojsO4v literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.44.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5925648eda06d2c62b22eaf769acdb0a93abae57 GIT binary patch literal 5038 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 k6&{{PR~c>^X@&h=Wwh($ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.47.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a30f294075147c70528e88a9c42cf3812fd4158c GIT binary patch literal 818 zcmaJ<&ubG=5T2R$cK2=GrrBOfz0IpRB!YsqY}8A#re_hoh#rzqQb^J^ZBs-c$@U<4 z=|LGbqQj#PK+LDU_Ndc#&{H0ti|0pu=!v%5L!?g6UM5UIcr_}as5 zMD!E_`U@(&eR5A>Zq4Z*M$; zuyCM_hFIAIF*^@wJXnGh5{gn_s8CcPNP~X*aA!%Jj~lr+p?$%+;6cL@*mKbQ^!i=B z`Q`Jg`m>pNII|CJ6;_`teE<6U&ae9F%NP0gv;OAPb#&@GvTw1VGaTatGn!CtO>wM6 zkP}G`85jqSn97j8KL)2(W%B^fe>9zrJ?Am8caJT#k!Dnh0KW*u+qv(k?rRqa*nC; zGMdgNS1AjDVm*-lUKwH;lA)#+1+b=K0jen@O?@%_ghWGyvYM1gh6ot>dGqbziSt~1~APR~*jtf&z(AbD3UbdkFA*G^-SH?*34{@-=Phn3A z$`nY17vL3mfppY70~K$iJcBN!7S*#{&kjYYJlQ5ihv?L;D2$bA5k*bSp_=xK3 zKS}qwHE!nP^LewLz`16*oPR);|1haVX?&k39-t~`9aQLZQ9;n-qQ|JxY4!fBqs5QI zUA4~_s)wqVL(lL}$Zcv2@74kJ(b2OyP`&^C=V4%>OTm>u_)6&Wmtg)cSRRTI`=Ska zvHqpAkv9}+W7SGfGl8_5W{To2s!!JlrhfOUej04)f)f_^kPBh;84^jpg;Y|-g-o*0 zl9reT@RcKK4RVkx~;$&qAhd zv$npDvTctu1-B$G;T5I!#ZN;a#csydxX9a^5T+6xpdn|K)P{shXNhg@CcZIp@E9?eu*olt0RF%4~L@5cKB{WN_n Vf9v?~kISp(WG)Y&_Py;1@EcPoX8r&G literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.49.wasm new file mode 100644 index 0000000000000000000000000000000000000000..467ef2f5270ef38d82fcebe7f533d7b9cb7762b7 GIT binary patch literal 669 zcmZ9Ky>1gh6ov24%J5a2b2msiPCsfxk;kvG|o&ZcxcYvD- zS5(rVSi|NZnaZ-Y{#cH*91upr{v4M>J0I}YKJezkRhXJKI2=poK6XfwMKRfPf z@%5;w4(MEUU-j+C6Zj`+H)D+j@Mby+Fn$z$-tCgvDB$@0*Ppu|XTSFY30??n1%$SO zA3g^DzhG!2ET(7!crpH&H8pLp!i`Z|L5&5}Zk#KMdXT@nguvsw=HlC@&aa2TWHwkK zvG>>s-C`FaiN1tbVnqfgF0`a2oW;sX^t)shy!ak;{1kmNfb@X%fak%8>1j;m8L{`F zqk;o+Vs1kxL^&!olK40{b?n-DTgosie(}ifv8RRS?ca2WZf_ z@@)??^(-*tn<_ZuOofK*6dLI=8jyPElL_$y&=|3}A%oZ^U=zqa4vD%*+K@$Fdo)vK mbV91V=`6IR-Hi8p`V;lS{I!F>FF>9ahYPs_YTui_0Q>=lYHuq5 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1de3a67b14683a42546f87690b6f234720fa7d26 GIT binary patch literal 1357 zcmaKrO>a|26o${7xnK5N#{+~A0)ca419n0}KChi_nt?1>AQe?Ckcwnmts{{S95AhD zoA`RcvWqVI2g<&y?6PRXw!Z?ki~fbGYSo@;N};WqD_xzLbKmovnYr&kr@x~BK+P4} znCH;ed7i7h4bWCHQ~PSat@hMjTMq_Wp6LjI2@LS9mMSU^Dbx&C5Nt(3b#OqTS4s*UF-!C#;TShtZU2j zG=Inov_N5p7ip1~Xo&*rf0S-$2{St3Wm>k;gm=M;j^47m^Ic;>=QMaXyjU+sA-4>OmIX1e*o<16vO}k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.50.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4244ab249115859c772fe361655be5f4e26b7719 GIT binary patch literal 636 zcmYk3&2AGh6ov1-w#Sq4q?rw<%j*)MfW!iX62yiW-heHOBtk)IerVcMRl7(WA(kwV z`V71PY*_ZuI8zod(#-K(`<~CorrCDQM8thRm7Hm6a?YHmL{r8e?|3&g`~Cj!P@2OCOQ~L2w{IS%l z)zx~kxp*-gy&RHrv(098LuK{bcuS25L+1R5QnNgvL_?_)DGj6^2qnKr*XJiFejT^f zp&X!Zpx?$pC^YmA$?iV~rQ6%^g}uv&lm##EEPNxJBP%H{qp0*LeZQk<5=E=_XLRX+ z=QSOoOsa5xydJrDM);^Xk(8hvLqqkllX}86P$G96DV|Xz6|8Diu>~y8i2?>H7DA6Bvmti6R literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.51.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4d969918b9132b1595266263a04f2d2eb7d27a80 GIT binary patch literal 620 zcmYk3y^a$x6ov1PJ$A+uWrPIU@_LC-C@2=R6GTJI_7t=fNrZy5`C*gIY6S&xw4$Uy zG&}(kHN3#~JQUnn3U(yx*w^+s_Z!1>yFviKzMD|aFyWjt<_W+Ab%hx}PI$N5{hLxG zp1r%QW@p>ev+;Dhot<9*w54J-TWx0-fb1O+7X;Q=TqB}o1T5}x#HX$Vi=Req zwV}Q0bJfqIKoIU|E&b6CHa}04@%PuTaYl(+s&*JPj%poIKyVRBs1NDOHAFsv{kNCV zq^teDj#g}KV<9BPQ>uhCK00x~q8Bgbb?itdmQo7WPR)Xz3-ee>)rVeqgP~0!-C*6| zMKogi+L^iHqp~ad{?2>-weoWL`TXR!cB&`m9b-+X?H`z zNi=}PEZVO7P?K1JAs?vVkZTnhvRBhWr$s~B!+=b5FF`J#q3=i}z^sj}xOhAIRYgJW*`860n!I#DF6Tf literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.52.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b4f0dc9f342a649497659edd71853bf1b22a4c60 GIT binary patch literal 634 zcmYjO%Zd|06upnCu1Z&j^k!smb!!YmTnIWsx41E-OBaG$7fFx^lZTTRg9@gz5Zt&J z{0Dzv^aEz^N9j!v#zk?e&aHdSJykGT&k+Fd)D5X=V8~6=U^4_5qMnq(&qLmBxBvDO ziO26Ri}A(!{9-U#ug9wmz@EzH?8R67drzbhYGQ|2dSK%K!S>j1Oh!OdIZT$(ud`Vl3)6J zwxXTlGsSQHKoE|UOTYho-K?%f&39LBdHp?naz;~;F4SdIJF0p_0l{e`p)RDW8;JY@ z?!J5#&7m>cgHX&Q6Ij zVQ)uTU@h=88Zlj+GFmZWpF&3gEAnC@PYB^D0m2_ssYnh^z@(6Ty?|gzhn=U5y?VQ|4BlY70{&pT3V~PO+k5^N zqUgxaXt2tZgh=Nhv8_BLP?B*12t^qeB_u&JdGj*QuTHyj?*}fAJfDZe?CC* z$0kkU1WwjzDmi4qX`I4on@PASAez=5QX2&?%r;0&&o+ih;lZ#Fh~?Mc0>~&=_zO_VhbIT?Kp9AQ3Qp(S5Q*W zKurw|5`Q2+jd4Iqv3k3+n)l7y#k^Y+02=xk=Zu-jIa8hiGtv`nX*)B!-R|F(6Pxzp zwrVfC#pT(&>)PuZU|%ZM?Ye7kKqh!*Q!t!$v>_sA2vj^anVS9%F{AnMApQ~i#l>xV z-L-ITzS*3ALMVS5Z&8~#CdyCI)T<*j7<1J?Fyd;&X#BGIcy*-3&(nQ%%)RP~>X&I` z#1f}KeC*iD*T+Q zR7g>~I*J;Sw mbrH2kL)KOamG(YFj7k4QA2HTv|G!f{%opeK5;}aeBEVlgR9@@= literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.55.wasm new file mode 100644 index 0000000000000000000000000000000000000000..21bdcb2352623e0b77a8374622115f8e30f96d46 GIT binary patch literal 805 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.57.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d625c04de347839a3a5f2948f3238b7afe58f3ba GIT binary patch literal 2172 zcma)-X>3$g6vyxKX6u{MVJ~Gnr!6q0EZulB!`8l;0%dL43k5pUGA&&xlo&MA4j_bv zuv9FuM1qxKsF7$*0h_u|2uqa21c(GlEu@iX^aB{w2u9<1qcJg2nJ@3Wd(Qvd-@SSF z{vQj}*Ko!d&#?JLIL!Pq91ioapD{nDk!Wb(4So>{@sM9OHa7kvBT&d-?F;tc*7}OA z#ew?z;PxGi87Xs3u%_J6L=& zp)50FS}jdiT^=mi9;hfSE(?_I*t)%EeSRKe6($^k!WJYH@2Yt&|p z-aMst+0v9S4~ejB;9=3AJSU2?f@$XH1ZNkf_y&(TwG1ai3QR7-RQ)Mora&r8Ax!7f z^EB;LYMV-DitBf;oxc&nX*8auiKYnVAjjzjrio)3OoueWq*FcJE%rt*dpTx6Mi*xK zaKp-c%z{kFD#981iAxMMm;su@>OFtxo!tk1+4n{wx~SFVk~_UE-A|5O9BAL4gl(ALJ5j z9u?<#WPt%I!1*x02N&c{{Iw!`*4Ldr%!37x7r=%30Kpc)LRdtwXAfW5-S_11yB%R% zOx=rJGSA!c`}aRRyM6l!<(5!xiA&}foIG4=gdAK3OJNz|@~N2bk+lC5>Ba&m=)vW= z$8N^C$Il+{;R;v|D+0Ju-$xf}6|96+ggf5$;gxIspB!6^tEqXlOQv~SKECzvhk;99 z-C($ea%)`DX<*WDtr4792y3B`XzQrB&LhE~0j`JjJy?``ckPD8dyl`PPX|S?A%Gk8 z4x(*>jj)MmM^E0m^7f-c2d*G+X%(3gcRl~@54$t+GS<*MN-LU*8~ zf~-OXlw@)_@(%?}Gg%x3t_dqBQ&}9Eb;CH!VA+ONkptFPrZaL5#VM?07&eG;FqNiK zsY$IQ+prsqMrk64i@2B6fdCSeDw^Mv%pBxVz-XHkxUn^IEtj;?q-J_0yP`EXg@P6@ z`_rggl7Y$Cp^a$P6&ORSh>2wmi%LBzs1Ah)cIvfPVl2cOc=bK0GQ+vlq+D6>dOw>S#r3{uh+G?ZG_|L#a5CEcGWlrB=z g(T_suCM6x)D3l&j(*H?Ke(pNc(@4rxr4AYU1De4kg8%>k literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.58.wasm new file mode 100644 index 0000000000000000000000000000000000000000..370dc182d1de394ce0599dc5372b2452fe1b325f GIT binary patch literal 2172 zcma)-du&s66vuy$+t+T#%6p90Iop74W3cCK%WJ)Df$`b~3>XYp%jm{79)l5sx~?cQ znPeslE^*4Dj4(6fl*c9^iy{z#42Dq%Q^Oxdj7CU|XygxKK+mnl#6)HP^z@wbJ-^TI z*Z%JJvQWb=&KTo4wxEbcSx`o!Q63F47UYzPNQ6g%qOp-T24z!I(?2Q#g$(b0#vb0& zP_w5Z)X)TYiWZo6t)ezp#xU^Y?kQS?8X2rzoIp-$H88=UmQLZ1nz|<(yf4cN{ zu=r(CRc_9l-L%}!>hQLGp_6Tjkz}{pkHhYb#CJs_8pxEkF1ykdx2CN-8@b*{# z%8nb^@h-K`mZd~_qln4~kBW%$lqjO2NjCB(K@%hS#v2vdG&21HM^3xobtpijGX44` zhB9#PgTpv6{h}Wg{cvyR6@exYVA8~gT)%Pq;a!1d%FUWM$3di16)i?Q$I%KFusTd= zqrS~8`l;`vPmF`OK2-hDf=R__2Nmq)7_YZoU^oimVU)wF5B~hPD}o6$mY|7KT<`8U zdnkeq${m{MjbTo49Bp8FIgWwRForN=sXx{&dSaL!j^kilACC9eOuJcx6JR_{D94F< zA7K(?kfmfaw6`i25*Lk^v!^FyB5L8WNa7V=0>G;QA}K?p%EiQz=i? zM0*U=!EuIxY3Dc-X249s%%c7*w`hxD+BiDF*@tQV?#-R6Fdfn$y&N<2M}(OT88F-U z(Z24#X2MJw%cMI+r#U!06u~)^&(TCn4AaVSu7PRcm<4koi!j;L&vuLE7^azH4&?M< zuK%*Tp&0WZ7xKz6U+=ugP=kEX99G}GH?Leh(tq>lFhdv3x?J*r@0)jSJa}^Cp^751L!eAJ$7oZZu@aFl*8r_Zqa)P zwiUL(R)Te&zkcoI&eqpYN3nvYD_k zjmjk%n2ZzJh-O`bakPuLc;>LEG^2v*P>5isS$i$UL%e}kPfC>;&ZVYQ&^x5!-`^on z6{^_@*^C+HGXiA}Dak)Zpv)yDS-=RCd8DMLcm&FPQqmJ>D7C!*J&{IAdVEHpbdi#- g{s@$AQqsL0fzm@tdOxYDPu*vB7D<_^)FWem0Pnma+5i9m literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.59.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7891a09ed079627788699e2726f8f27296bd3f25 GIT binary patch literal 1031 zcmZ`&yKWOv5S{zjhxcyc&HJ6qI4%qV6eYnyH1Wa*Akn6 zy1Keqz9F<|(|P$O?VR=wPn+#tuk-4H$Wvjr)9rOGNSRWswTWU)p$*iTQYx@`sBqR4 zDj!^vD=7c*2cnvpIM~{J&^zp&ophR)+s)qVE(NjYPEOnV6b9|Hvy-<}O1=iMrOddx zQpGyu*>Qz(s_Qf-rkYM`n)2u>>-wthg1^QY&iP(NE0H7I>Z)_GB^t0@)HT@)BhCWSN&CTY+q4895x~AaX~Na_Vz*j4AZh$bXYF5*W6}I6tUT<_AkV zW*(q+Oa{<9Cg$Ldi6wmE2Z3bIe<#Z#H_BJa{IC-2PL7bw`7G{}3Q&#PP;eOc;4k#X p|NHX8a}!Pc2~Gbe@Im|Vgg1%&bZ+rm;9>tQej7YKrd#|&`UxNxpdA1J literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d58e5acb26bdd3b2b0c64f7903f4a4a686044a7b GIT binary patch literal 533 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.62.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fb5486cf9b542de93cb5ad47a63630c4ee28f283 GIT binary patch literal 2869 zcmYLLc{o)28$Zj;m@zYqtwida$=|Pt2FN^s+4z4WpafG7>S(F@d-`}DcISq20Q{;S6yWLm z%O~JHgMtE%0VKg@91#c5V6qMf@-_iXnm-+20y+?d2_S$XL{WqQrhp$a{0JQj#u=?d zb)aa>ZpUnr5g7u=x*&W4GJ=f|7y&lJ0D>!`;|l2z0vBON6o&vzq8|z%5DFt8ljlbV zsQ{UbKx9P_{Dp&7afK*mf0eG3p&;_V!Um9x!$gCy2aJM#Tkr%9YCWIwmECKstg5YE^6;V8bL+}g$>wthd5D~$t0KzDN31SQh zh`!eaK1KZej1wDQ%}x>)Wh% z<_8sIIXsq%V!Gr9V$GQS;MG#^l3*({>G}%0C#3`zVV2X$gtf7EX~u=ks+>mWQ?|jp zYLiBF1N&>Txgm`F;itkuOBIZs4D$~oQ7_pFJqv~W^&-uVsy{l!G`ks6kr$cvQ?0SP zlyMtAac`)qj=0ag9=*1OqQ5=R#1Fp1y7B#L$5e^adEQiAaQ?B$MdMi0%9~mJ%ZmB) zMb%jY_F2?G50QJ}hPysT?VP)Cq}VM5Z%9UsNPHY*n$gHH{?7fOi> z$94GMK9TP^sJKq^*{_!BtA)LUvL!U-TQo-T8$R7%E6tH0hp->2F8IgSHE?Zg&sT&Y zrkzI7{^C_m3)7 zdCC#$+a}neJAV#K_7po_IBocMZsPMnet2GA@>R>!I;|o8eAiElt>GL&SIGj;8!zjI zgu{lUeW`9v+#ok0m7>UHWHL=Fy-F`wd1J~ERlk|b_Y{JjwK;z6H;}2Hp7!c{QPXs> z+mIf)*B3pob_#~gLaI^>-S0=vXsCdjhn)tfJvL+XpyLBhM1_H zjNYy+BZUN$^%d~ zBTqti_D($n*C)G_WKzTXW(Z3Q&<3WYCg z+Xt7week<_{9&J!Zf8U|ylVrXy6$6ar>C`#Gi&BJq26E9Z%3I~7<_zQ zHKWO13}mj?>NsiH;siF~4G*p<#c|k{@g#*9_TSnX z$$F=7`JT*NOh;{4Lb=Yx8s$;RVI6w)yj<`V{X{UAemt&K#XYzxnrg0d~FOh9o&41xHon*35fa%M_>ll~Z!}L%FGA?7nbn zYTaw=E3L7a-LmOF422`oTUL!(j1=+@wM$_tBaq0BOW@?(HHYF^}>@jf!(9D zz(ZpSk2dX-{9Mj=f10UYX%}yKnjd>zzN_@y?LPZ&d|hzePUH5>fZ332Ckq2UaU9p; zq#ib0xG?d)y{0cbzk*U#Yr-08WJ~Ama@xIq-L5-~i7%5|V=BypDBbx|57qv$QA4&) zdRfa9s$4T{5<9gsT~qbBYtdMeX__`Dn9(vx>YeSU%RWfzmf`Dl>=}ve_L3l|jDc#G zZeGV(q_2+{*go#AAwhZZR->*>&QQ4$$nSWEM(~tonlH<^jUUjjUWf|lXy>(*XDbLk zn?wC3VAA5(b6Zayb3b9OUf`hps*d|8Yg)WDM2&h;W^b~FY^_w>sr}B!4aD`=j&de- zTL32)@`ypg{^12}bB8ylJrbMB^wN&nRXEGar52R1j?TL3zg`Xz2rKH@xSt#o<8v8* zrw~zPU=;GZEt>0{HSSzvPYDptMUr%D@mNZ&96ANT5l^r$H zFWX|A{=~+}oDh>xcx%T0d>qT=&DM4|QCG!1e+%vHa2*E|+Q;7VSs&SXZIhEeB!%>> zToF5Nn`rc6957S2_NTnoi1|YKNLrJn^3q^T{n*dP@>XWEQr?;| zL-=}2O$~Wqw{3PytB`7uyxk>yii29@WqO=XNn-YV@sINEQ0BS#9}3%);*)t6k5ahI zxeae#Iw@rL=4JLp;M87B0V``0d5t@^d%FL(dm;xteFG2;V0AV7o&0YR{gu=N{sk0X BdmI1& literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.63.wasm new file mode 100644 index 0000000000000000000000000000000000000000..58846b5d31fc014a0e24a058174e3e10faccc0a8 GIT binary patch literal 1597 zcmaKsJ9AS<6vxl*-YZ?{%J_o87%*^-ErV=hz{dRC^zL3|V{d!CvRnV6 z()j8#@&`8Z3;!8S__h80?QbZR{w)YRicFYSDjp>pZH-RRBhe- z*ivYH9C50e9)c3GZ;@Nv{I-iG-Zy@Tp|%o3|u=oZ-GGuq0=&e}I(bQO-ueiu;nCCzdfR87r74U3tuU(matHP9Dom zzQH%6gyb-pE15^E$IT-d=kXJn`1{99@&r%T58Qn;|K2=|q-JLnM+ryu^2Ea@YO>=smv6_c~C}qAoOWv`Fqd31pe?^D>|= z_HxOPgOXUbC$hpT?A2tIS7nXY*dT9^w+~=^uqhAuVV3&C&sFF$TH8nrCd`(2>}63w z$X$>9CF+N$ybjo#qJBx()1-YNfi82^ENfo3AF5kpRUlEhC6ILSc)C-ld0Zj=ZI zpGq20r28mJhFBAF7 AP5=M^ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.64.wasm new file mode 100644 index 0000000000000000000000000000000000000000..daaa8a282bff23dceae6fa97edc8ef0306ab4126 GIT binary patch literal 1597 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 ZVoyBv(7zYQ#1VL=$5In>Slr0iKL9q1$d>>B literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.7.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3dad2d8757e434c1f873fbc91a54ae9e6786d8b0 GIT binary patch literal 700 zcmZXR&u$Yj5XQ%2d%an2l5HEIiqp8{5TL3Mpv{qN;R$$wY@}|aCQTEXswyan_rQ@u zFFXM+!u#+Bh<{_PDvEwx!sJO(}P~ z-9H{3%Ifkat(NQa<#@7QS69~n0Y!^yv97K`$k-rC6Jw;bSP3Dt6d6t73-&wMX(9H<`MA0XWM}{VH*~~7kh`1^lGQP z+Nurm^A3tvzro3S^Mj4LH+AiuJ_Q#QeDkMqCg?BY;-K}dYZc%U zLP~NxCVYa&&XUdaLq@F}2LTOSN@;`Q9Qy(FU7OksGC5K}giqz6>ryw1 z!drSMvw$*}QPvS=J*!1D1Pe_98uDS%vi1o XLr|QMa&0;b-G+FZ2>xBGG6MJm%aeIt literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.70.wasm new file mode 100644 index 0000000000000000000000000000000000000000..455f7b4a5bc5b007f97153781ad48fd6bd124db4 GIT binary patch literal 2384 zcma)-d2AGQ6vuzZ?9on37ez!7d=IK_L9jrX*@8-cyX8>ikXx#DmmboK77DeL-3~}m zFrb_%LR6HhBtnAO2AbkgEGUAZB&~@=6l1DlI7B6)29NjK82`{%-9P5L@9p=^_cN27 zH!Mw0gZZRsaqbLe%2zgs zDQ1Zj#en%mieE70DOI(L2T`*jM|Ul;l5`yD`W#a*GnINEwgIQZ=0B_5y4tqiMk@ZHD*Nf=?`^KXNK_gR_IdY=lWhg+TGqvqqhBEj3nu3|}(_e(p zP%WQ*|Ga@N5a6=J1+K2Xvgw-@=%(6jiE~`N+SFWw9x6SS=qC0dWJ0gja~zYjc5_Sy zFC;;-&xIyA&4BovoPIiD3Z%p_HMFM8n1;O|6?)}in%daL&kb)P;_hrMa6 zw#D`p+ z{_@jn90yW8&=SYE`smx!@5Jy{s&BQ#kp#ep96<*kc0B>@31;qXYzf-C~)*!@Ew}UFw=W#Hx~{8f{U;2A)C}5kBM&w{_1v=u z-&l9$Cx#(vhHSZ(LWYtbbG2^dI9}^ojuRjk#=``k8z+);VzyjK&I~%@B$(8S_vOxA zePUVvw8J61AMS(uBRE;TL`V<7WO#s(;^&`S-Szs~mqIv&#;4e_Hh8W3?1hH*i?7j* zn@YW@wyX-CUlqT2`p1)v4GvDD-ZWb-)cLhIT}u@{sAVC}fa&lc%pjPVF{~@u$Jlgh?YtCC_D_0z@vnc zPpaMh`@pf7N}1Mr4S0BkWiYBc3ivA(tV_pVG&Ii*)kB^ zwByw+?UzoxKMRYgRcy=5VB>|Yn|E$Mur`2?QR^{V`gL{y6Za+)OLXPOQdkHjP)a0a zKJwXCDxd%fMj4&omCk&$yMfUyAmMb`B!VuLPU@zww8n|SFAVeq z8EtM4cx}2uR|Z{q5~X=(U@}o8r!t?%q!|-TpFs&JG@DY2sgSDU%^!rx^x`%LPqs*aOdqOfoUk2q0sB09yQLH~;_u literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.71.wasm new file mode 100644 index 0000000000000000000000000000000000000000..80454d3bd198d1eb3e9412f0f65dabfc0e141ad8 GIT binary patch literal 1832 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.74.wasm new file mode 100644 index 0000000000000000000000000000000000000000..99cc44e2b13348459431a6eec881c63069156837 GIT binary patch literal 2145 zcma)-X>3$g6vyxKX6u{MVJl^mbJ_w^%F>NDGi;qVQ=qIZOQA5p%s^Y{Mhit!P1^y3 z29-3`RIGx9B2my1A%mneidcp4LHq!2i6o#R#$c>U14@i~-e62jh~t+z@1FBN?|1LK zd;gb(8)`XYjOW-wA`)RC8Hq%AB*a*V(?~Qo^X8CfYT`{H+0xSTuZ%z;%eU^dm)A8^ z)&;{24dvT+FlMC8wdJ)9x-r;)x%e(u{Xr{4Q6FnTnB+8=2h&>#wU;(Scgf^<% z+~PFVo%D+dkPt=H&vr$M&<-lt1DL3{oo6@*5@C?Ts<*z^)!B$i)Rv@)lU)Ds+=2TH z9W-`mqC18;$#JlO>E<{D2E!1-45j)|w>TEV9OF0)hDC9>pLSRgCc|(@4&Vs=6k$?e z1f&pV;HPJPQE()+jnu?ZuD^D@jpHa9j?%>8809F((FWx($1yM(#t>yJ)yKNU!5HNr z$4B6iD30@cwq9F`0OJ4xi24;Lzu~s36lx)#8XE) zn{W!XO`+|?^{0=&)S=*18c)^4-WX;d$7u#;FUKsH23ds3rh2wp?1^FaaLj?6DCYV% zC-{mm4{{+dfYbH%_Zez19W;m4cm2k-zS{@xUAoQCMZGSUZ1kOdrLFbFk9MEvXXvJ! z+a>EkWXeYL7@;0#fCpwc%s7*ZGd*$(hzz*}XThvqoLxYlhq2$U`*9A;hB;x(*WV_b z7xKYNxHm6+({`})#L;~b)Tvu{$&l~ayPtI5diU4olhH>hpG%e+m=OAnP>KcMhXSI_ zrQ%$VEH-GxI1lFa;`|3RcEgW_FdquTxIq7mXbWKhEF@abz}?oX*RDp#<05Kan}aAGN}hEjs9q2d~k1Oo=R7S{G+px}*?Qwt9r{=tvyAOP#axL)s|4;^@6bu`|fg2$V8wt0Gikm#r zYT&F`24%fi4&|VPu>vY^Gi(M)8<5O{zAS91!b+%2XG!WNt{S!?bO%Z*$ZAwTNhgaV z15v;MQK?4-)u9lnYcO^>1eaZ)wxMW`!uf3 VLpr*S)YLfh%g!PpQ zph!W9@)zh3MFf8$KY>4i#B4-_L=&!gJMU)Z?Yvp2cUlSnRGhD2mO)KtS*EfYKux)* z-|wq_P4{{|)vM{jVDJxzj5Rf=}8&4f7 zr97=b`I98lL;nCXG(se$Slkzq(yS-G+%BViem zZ|A`Ji8wCb>NcBXI2;=G2+50a#YLYr`x5#wR$O>tI45B)#xmheT;ae$h4T)|T%dsR zRERvbl4b8B5mt~mr0@$Dw?*YC-=HGhc)_LQqliaTq9_Wsq_z739+A3{4LyCuTs-1Y zp++}!bVYso0X!z$*oGGMTY8$u9Yj3gAmB+FrwN*je4di5sRtSemo@M-O@HMXnjur? zS(@cJnj;+r;>o<^%{O>~7RpevuatFWVG^;HAG*ngOj+y}V+?r@p(LPU49MJu68nh~ zPkhQ9ae$i?6lIg*hpAv7emFP4N-HZxw&9#`8UyWRIJjJjPDlhanWpsj$`Fb91Y&`J zlCcF)CY7eX9Ay!5hYHFbwm{s^QLrHcddo6+UetnTT##E7iV)?j)L62S5rt4{!v+_r p=;ZC82Is$BsmklFUh}$Xr@psOcj5BAxRQAN|4P=R1gzO5fZs&x!wLWZ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.76.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8ea639cd75d1b98d020d04e5d14d96f8561042f7 GIT binary patch literal 2241 zcmZvdJ8V=(6ozN!-rc>sch`G)n^!o;Hn3n`Yn!{~X%AqY2F%-Fz-!?p;0Ly`6%lE@ zyF^H#NRdbsC{0L|f`S4C6j4w(h=PKGf&xVpC`v(*f^;cTXRSh^@Cm$yuqy;rY&-klo}p^rTSIT4=W855D@Wxwg8S>XKNgIUoTo-q+i zPOa0M8yp(T2{+U;JUsBFsEYmVCT!tZt}kV=R%oxkMrh%yxE3T*DxOk8NBZ=Qks3H} zwHmLlO0X@k-?X|)xH0%h-XYO7-Rz!jUMM$zBGEJ5%uP2hxef@w0^#0_*4aflu8L|r zgvZ7cE?d*aQ&4&QSDuf0vLK5xuduTcBWnc<{Xw!c!S%BuRVVbLXM(NWd%jDzv#m>| zQl3MkDCDcZuuG-VS2l;y5Buu9B()Y^ju`u1vO^JaybwpBM}74t^c4O%rX{-+BX=*y z^|up(6BMU}mzc!9!!Uz;8{pnat}?i{l9NDP_HB}p!u}Gi||6A7W(RCfO;u;5iM%tYCQqaVydRaUP23AfwNV%Ks}bcl2#hjD*XYd)wGIMS5Objs0RV+q2!c7 zJ&?SHQnUuCt_5nXukHt^`;zOazKz%E+rJ53PwQyCm)M2fG`}0X0b@60tb4NJx`pL7 z!nrYH-36c?5^pm0uH-arqO|951M~)8-3b=BBe{_pO{`7&9+uclO|&_P72MkxVo;?3 zbz8D;P$kJ3@+sp*xfy!1ukz-+m&qe)LX55(3oaELMUO$!Xm;<;w!7_7rx z)b)tZ(|NMH_yS$vi*%7JTnSW&ZVc@1<1A(CMAE$^T~j-h_Sk}8^|MWO9SRgmg-xNY zA_*gXaP9RX$zk082!$y!!j5VsCn2;zk+990F^W>m6E09LCb@kar?^?8V4=Ddf*NIM z!U7iA{ose{gokoOB4bsOu9 z*JhSnhHrt43*avPG(5ctI?nb?y+Ti$_lAQzOE2To=EdO?1byn2PkxWfuid;k;o2Q6 F#D5f6*);$F literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.77.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a839d60f4f4469b7f8249106b9933832c60c94bc GIT binary patch literal 952 zcmah{OHUI~6h8Mc&pV~V`&l>#8&egHBAF&`U|5j2b?c&S=#aF9QYayqv>jqd+!*7= zU*La$E&l`m0vi{uJr^}5ChBA|-#zDk_k8o6bD_~c5C9;Opf2+q>MGB3k=Ft0!bZd4 zkRvr13@nUBqd#(zq{_OdQFhpG9o8ECes+8UU{mfvcF@mGK&Zf%QhB}vS39C7gm9Dq z;m)XBr03UQa!9}Y2JfXR?LA+A(mkwYXD3;=nKf&@<7~IZ0^M4(bqY>tFWLCVzUwr4 zz5O>3gkQC0k~<_(mLa{o22!aYy?t|gdG~ITvwi;K z`M{g*ui%0MFa5}0KfSuS{iY~Lnf6XoXz{HkgAz?5*BHV?Rv3armQg;GYZO_iP{Bf( z#xTMHj>QfYnN>_AqO3@y7-JeoO%phd6FW4ClQe}>=*K?OysDaGaH}e2aH@)vkJKDZ zTZn1Kf={zJjWakKyJX38iPW~Vrg@yF1unga3%IyLOSnWOETM{hZpkuJm)o?0D`hB} zU14mmWEzv=4b>ryy39Q$2Q@k`pvWK+>7#xOMRK`)9=hlqkuSHZoQ!#XNO7Eq`=T;C}}%;pfRSqFtR>!4(_T-4>IYaKb(k+;pG zKo9+@0(2g*_kh*>R}}JJgawE_!)FYdShGUJXQMU`pkU=qQ-PhOxnJXJT>I-a#=S;s WAD_Y9MX}^$*)uqp4-UHh@whmi0Qgk6SL}_82`F8&h&r+eVPMpuQp#ur zDqPZ)%FoWhRgnMu3(xc;oPe76Aci3P!?jnvfzHg0@}}Q2s%Nu&u3-h7yWl zqM?NWM_V9vMP%C=$oL0}U1XndEGptUq>+;zM=lNIhD3Ukp%_>9*Sn`0ypfK&GI!le d=8ksygI&5MvmpP@mt~v(FWZnZaKU2&_zjSRn*0C& literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.79.wasm new file mode 100644 index 0000000000000000000000000000000000000000..0906669664e19bb2a62445b236863109b4b998b9 GIT binary patch literal 2953 zcma)8TWlQF89tZU_1d$W9p_>kF3JBVCaiPA*S!RSJzfLh=9q8`81QbKHL)Ehc5H$J z_ULMP}3Mr|Yhp12q5L8q`YNYZ|sio?7W^E_2 zdFW_&zB%82{_nrc%sC^{1HDoRA-hXcDwh)}oy+B9E+s@tVkAf8NXi<)0n`PM!*V!f z4dVdnIml+S|MzUgN@orn4rUGxbRBF@4-8}u4GLi>e{ZIDATubWE_IaBb}$qQE(<$O zScwwLC;Oz7J}rgxm+72z^RvRv3HJ{lE}@yW_8Q?| z#MFwSMNGX2lr4De$qWu=4i%j1MRA}rT31jm37g9smF-1Ltq3k+>P4t*!Ruz_WxjM@ z-~J<_wB)kmSi;eERLb0X;W|C*ge#&d=n4`M6^tn17InKr{p&!EHX1gn^1ue*=|)=# z+XwD#+rgRS1S!&_-ko^IF7b#nq$cdpf=$4%!W)q~^A4s;;JXu^#`|*`Qw5E4QWI^NnxhZ=p)L`ZCsN~d$`TKJ|57pdQ=d7E?YHsZF=E)J2lUX%v z{;*_yb64|>%vy_>`LXuq%3%xbW8qFJmZlRutVmS|_op8U*3Df_pZ|48Tu!p(=5bi; zLm|GXdJmH};>>>XJ3cM~TNGDk!A5ZA00pMGIJxplwuMWmm`d8%cE@K02g#GT&nPZ6NsKFAZt%3? z6$Zx?ucT61PAh1oG34bklGi^rJTOhI}uD@iP^7&DVw`06L zsy;S>(WZ+Y|CYt~VSHayedHx_S#pC(;A6>+1}{o>4SpoKi5jSpTxxQPISHR+T+MnZ z%}Q>j=4rm4?l(n0;GX)u;0NgedeCv25ZgPD-VQkJi0NO!X%o);5Iy9S@WWsqPUv5N zt;Crhp+{!;(dHjE)b4Ek_oXC1Mvu~CX>M_U2GyO^LOZXkjzYB+{;e^6LC%Ld3G#7} zkH_?+Y&!dw@$(=2?xLBw3*@etKD#jUEs#%ud?KdDy`(Nke$pg2DfuabXC*&va9r{; z^dvn+Pt!Aw&AZ{VJE6zCl*c4LOV7^mbIq@>`oS(Qhq}|Hm;@kby`hruP9*UCQL!$DIcD@k<6$ypKBRCEDi%xeK$p5*ig$>fPK; z-80KrgC{WFsFo5a(A6RPhiUrdMdl z3GorkI+D;46C}c~(yKH4TJxnn9UpiL<}kfR!)YFI$FY!RX@s)ZpNa`IB?s?ZOw;^B zF$T^wpYk%M%YkUs!o&F}D2xG<2=OuRPL=cP9y&bgVStZIf(a~$;$Kb%PHB-rzM@16(VeRNZafa%5_-7 zrhC{Ts{%VBb_9!j+e8>3qbfkw77=E@E3ql~si>a=s*wUA;R-G$E20904Z#sMq-;3Z z-Pjd^CPr5Kaw_ZXN7^L>&}8*M-&Y|V>^dY&V|;`bH~@uCK-7;*e^eodh_bk-NnrCS zqCgDQ`YLq*L5nG{i%XD2Nk}+h8$LGKj)e$8_y)VN4TVg2`^P#g%r0e@w&TOb`1cDcvj@G(;`*T9U$e~DWyc&yP&+-eJMbufSNJ#O{ju~;r~t1q}kVaEDp zuf3kkP2Wg`SuxDQdSr5n*4^)HEODHxrrITXp0uy!8&cn=U)&~opT=Ie_U2<=(I<%&8zXQNZ+6floLol2dWAg6+zu zoQ~kW>y(Mq={`mU78}KS-S3Z}AT|sW^-u&Sst}=xN<;5uI4Mc98I$(*0>sU7+Gm-^ oD)j>%aQen)G~;Xtg>|yy*cDn5a@oySe#pZ<-eo9{bGl%F-!=bTy8r+H literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.80.wasm new file mode 100644 index 0000000000000000000000000000000000000000..601e0645147c4daa7bd97f553af368bab68b6129 GIT binary patch literal 974 zcmZuvJ#Q015S^L5FMH4UoNrOh8W#ovA|W~hjeQ9P1)`v#2vTfTvOD#9AT zsCvZk-Y$-hixVg_U86HEbC6nRICzG{?9~sSA*6Sur z-idmSL(WCPstDWfN7Y=C!b=skFoB5ax>_)K3z3O9&r#%=f+P!fmGro(0yD)^pUpH+ zv(qp$JY!~gmQ@spnK|Ljwah%vmmsel$IjhG9iby$56Q`4Ns@35|##vown$^C5U8b z4Az;;SW%GxRa79No-DnXM>>R3 u8@6PQIon=8RAA?-FK@`h-?;Gbd8@I#!%J{_t(Fk4{Ex6K1kla{2KWt~A*e3^ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.81.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5a03c6685ff1ffe69c4bae14b9ec7b479d4c1f19 GIT binary patch literal 902 zcmaJfYeOKtLo!YaWHOfiIv!P}m0BQv8S$oFI^FuM0|$ z5by!OA0P@Os(b?#pFv4M!QB)fq=;?K&bjx_nR8~KIT|PcP}{i%rYSUZnx-mk05p`W za57Po29C#S+|bkM^dANpb^G9H*dC7dhxO)Y)P8adkWv1iJs7o*LFt@D)PY6tJ);hl zQbsFK{)$djGCKvALh|h|1T|giT;INWFsyfm{Z@T+@@T6*IO*4$trnP4C*C=~DcAS;|F*^HR*;z%pS4 z%k0Q~=1@)vzy%7a@Q~+{*P>CRIVwhWPXw~>=WUK;Fska(AF9UlLd{pTR4(fhFJut$ zA}!Ej?ca>`V<_o#a*%mxg@dbRnUsl9OWZ$vXzq|*X5AH zOk=8zq>CAPSt!NV<_H3Zcw~T?x35$-4&{vWy+q<%!nMd!p27?)Pa6&h9(wi+BFh Mw=I3(y!!<38^9f>wEzGB literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.82.wasm new file mode 100644 index 0000000000000000000000000000000000000000..058195c63075d3e2d51f6703cb31b1aa8bda10d2 GIT binary patch literal 1370 zcma)+%Wf1$6oyY#^=-O(nC528)&H>vXxrHMGHRo2;zr0~!2(4rSXi1F*)x%^V;Bp8 zG@kY%i$ux-cmf`QB}>@kIauWxvOq~r;SdQU0WI}>b58yBSDmiYP3``UA|jPnTDmN$ zWy-QtWs9h#Ty$`7Adwji1`fmF@K{c>Hl5ukNvGG}=r!B@e&_K%kxKV5wgfEmo)?Hkf-R(8Iz3ug8dwspR-D&Rh zc6E?Pp};KZDq#)Yx39a)OF{aKpsB3@o zs(z`5N^ZY22f@)j5Dp^Q3RCf(Sc$jVVhvrV;@5Y?rXcoiA0AzQ{X^`33Z8OMynjm^ zeoB0h(dagDrFbLhxR5y?Lbi?rPKxJ}th(UukWWCv%k}CJ9tuw6`T_KmUges@LrxtY z@JZB=;$-UcDN&uu^?m3}-{;df&1c~8S)9Sy6&}F|pTjv+(^zCS*Y^ZTuJ0a2cbwTh z9(B0O=N<0w1&rc6E{OF-QC-aSva??1OSr_B#rg^^VH{L#9yWNwLCFeiwX zOa?t|ZZSK|@wh|A6JU&EA`Q7Ns(P*knXdCyT;*$GeI3_ueT6e*Jc&t!AFcf*BO64p zWTbXT6gjg|o^nWe+9Bc_n8Gw}i1m!9W^(O0Yma9!%QwY(4mUBk!t?3%Lf#C4IfkpZ*C9=y8r75nhu|3Ec?%5?;9hH7%oibDhlA8{lPDXL1# zas^(dBaTs#Cqq`OtW2_-oFH*)42|nH&#hw$$N~o5miYU1N~JoGtJa5d)%ws9`{Dp0tlP?LPjIhmzfuKr} zDnL{!2Oo0qB~OrxpCD)Zm{&;U4RXi}q@46vEQqbrboczXe?7CB9$MI1Q$(aj(>2{} zQq5^Lo2pqOsws)|?ydxSXGcb7Z*T9|jArfB-~EuSuW!9wpI_M8s(;@gvQw$G`r1~# zLCVQ@Xzlp&1oCJ~xt`ikN_mbVmFjYu%Itrluu10Q=R@OfrZY=pqr>mk8}q9T@{WQ! zr4EDF4f2nIIt7`fxRm4wAPMS}ISeExJPPWR^%gcZR)3^?=I@}xrN{|mrJ8+YqLp4U z6zi-ZP*G=#nvB0}wl{la^5=@3jrG3RDY3s)LQP>Hb5P&T960ld^IhW966aOo)Dveh zah7JnFJ7nD)O+cs-c23#nedE|B^4GqGb7yVJzp^nUC4_dnv4 z`AH<-{PT%8Fn`IIHh;*NF~p&f_rCa?HNVSD&ip20hxs659vWHMp%NR$`n}izi8!+M zz2Xyya3b>fr06H*%ZOf-kvq}Jr{MBwoWkiUccF{V;0*FnM+>-r0Nk;heZ}3@?(kW3 z<7|}TbMn@?SZ`a}HlN3N?h)7p^x#63FXAF!!XvShK-m!I96sBKF35 z)uL9p4}Dw^)MXTKxyn~?g|Ff&atZ293$6MPdBxEW=5QpCwvmn^Epw{VMZ3+fJT<4%?D;x12N z3PFOBE!kDcM;dgBEZ{*0Y*2xTLY@|JI@UcF)x-C2kM9d=2KO;j6^M3hmL>CSpefXN6t31!*q!;KG}vyciYh0PYawg{K;w*T6ddP^Ahew<`xZB~hf;trC}x)fpE>?t*sZ dASV_@?us@gsZ$n3E|_-ZAZJ1p3f+$&`X5$XBwPRh literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.84.wasm new file mode 100644 index 0000000000000000000000000000000000000000..781954ef5254bb52c0609a3d24d3f81b2818f12b GIT binary patch literal 782 zcmY*X!EVz)5S^J_+iS1WY$b%aF z9FPh(E~Wed7sRPwz_;)TjN4FzCGWhM**EiMv@n<+AOPUKxKC9DeN|NzR(*gziU)Wi z|E#a(^ZB($o>Y1GCN0O)z46XqIxSxx1Jt4LpgfqC$ABs}L@F`_p$>3@h=D@D@TRJ; zSX_Xup!o66M0b_l-Q0LkPNsYN<3kASZq~W>!eB6&?7xFJ`J#;mr)-8;-GRc5)}Vll z(gGOTl(q?qXjr^GT9e@WypCqH5Ze>`A-4qfHf#eddUE7>jp`%MKVJq%AnKvAy~Ut1ZWN(LsJZ9WLV#arVk7B z5r-Tdc|$pyhAi60tlMOkQou?nDviwWu$4$=DANqMbZElS>af=PD_VWxaqJSziw}H l1@*4%jU9PRJIlw!yMw)beh8P#uTxp)|I~)0!0Igq_ygQBe+U2o literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.85.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3e6d71e9afec2efe00d538c6badb5a8de7ec32ef GIT binary patch literal 800 zcmY*XPiqrV5TBX%cK2=GrrCms$C(%*Em*LYP3siE;AlL*=p-KOwrien4&B3Dw z5kG*aXD?pFQ$K;9!H?iaa5fDQ7v9dF-}}w{W_ZvWpCAC>X56KsfUYTu0*fv{7c~N$ z>X~%SY&Kg(BxL%huaf@R_~`7QHy-z2UI3J-@T7k-?q2|!*b$k?5rj6t5h4Z#0mJL2 zz6ng-3OSr1x$ybjv7GwV;vUB4~ze^ zDtJb}hctPhsD6J|*O!Uk?ay^sfuC01i!16Etk?o4IK_gdRC+U$nq(!q4_9-ybiiQ4IBgoUdn^@IQK>>2dF6QasnrgN ta+5(he%ao443xX_*ADb~9W0+0ANG!p`3@|WUqac=|IoHV;O#C0`~^mcZ}Bv{NTCsl;Zqxf|6< zS-B3at)yJ8T$&QLqqdb&j-^N?x~+x^k3Nvspzzc2mykSGsjlUT@zGaX)%wor;>uQi zYx7NYqfSn{bVP|Z>6dj%wo6Ckb}a|RZ`rcsx9Nz|ZPLQ_+NC4PI1Ag`8*eC={wdXA zlW%!}QjGx${q=qdDbSgaKn0yCXbO{S;oj?hNxm(cY@m-M&Pe>R>}m3{l7sr*47Ht> zsv7koRxgaI#;W$&9;-#8mSYtewG^u*qoP6@L6coDRkJcapvE zcTt(}R~fV6dl@^RVavauBzl2IE73Bu;WCZ0qZV-AaE=t8HgTVOa2h>+g3k!yA{5Ndt5;U$r$A~QLbV5eBT6@AK*S7_!)jE#fO2m4a(+6c*KtdHHXKT ztMC&%;iq^C%kMBB?=$f}TjP1m=PBncD$jh@I`r9+g0;>z?7TD}JFwwQQ%-^kvP$kQkpi7o3(1iRF3ar=)G=wC$_P;adIg;fm#j)eVdhnNDo)iJG2q@kr0M^}MV% zJrm-QE^qH?af;%R^T2q5;{WVtQao~UwD+_)fq3MMY3qsiQxcCHQSCh~&Xjn_vp<38 EU)Y*&Jpcdz literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.87.wasm new file mode 100644 index 0000000000000000000000000000000000000000..eae96ae294f6f65834254a7ea7cebafe3e75c2f3 GIT binary patch literal 5061 zcma)=34B!56~^y*Gm}a3CS)KB1VO)p0TUD@1Shz{LmY7j#eJCs2olIf5)c(b_e=>xx$W?n{D6FgWwOxhL=5?|<)o_uTj9oH13+ zbz+Q>cuu90N}0+)DwUE{r7@MlD>m^$Y~>`AlB^V41(L~RFMW-tG+9`R$8H%xI{co@kysHF0KjQ-g84 zHP=_4Hq!Q)NM2WU-Q3zlLw&W$=_xKtu*>x6CZ1k1&ll%*6WdmfUS^{C?Mv;kj=tTR zx2~gKURQPJI`Vpo+t-obP29PTf^Ooi>nJR&Z)jgbV^c$2LrZmHdbKsCf2gXlvGxoz zF#FQ}ML`n{xG|B`&c=(*9%4Kbb0VIBDRCktj`6~?y!ms6u<^Wcwl(Io(vGEFIL>v9 z+m~&tA*-)m<+Zl9{t%wiwdF^C*b=syg{#~`+BQhrvWLf0Yd_!rXwL20YytnnW=pkQ z`>>m5=>zygnX9(Wk!Nf}D?7Tjwd-2PF7B>tZDU8*wocv8Ywnz*we9D&L3aKLc3%5g z+I`J~OlJ=l(Y8(J&*bK@H}yhp=Cazh>Fi4O*r%=w+T3#!bL}pzT(R}eH}>5%oN|&8 z{yF}iB!ekQ9-a#F`q%%4^`gnj9n3JaAgnd9gqTdf%=yx`Vfg z^`OqhEzrTXXtBqszYptBYZvG+Z!H^l z@s_YIu}wdOwba_A4);D?Yjjs{1MA)F1|@ZbcMC6e_gY!+;k~@Z=tyq`>oU*iC~pz} zE5}d_jfQkI9E^@Re-}6TA%5eOnkU>t#QF=w3*tP}O%>39MMU_1_p>jX^D192cm z5*XnFaRTv}v&IM3h#rK4bRvO+F%bvH^$;AQhvHD|;mGi` z0!QKq92wV1n52_28N2&4Sl}oEN5z~6ec(aSqj9uOA#e<);F!1`i(~aT9EaTqlt#mP zJmts7ocn$G{h}w}1U(VM^(35#lj3?ZPS#U!3U;M@IOV5Oern9Q$CuwDnm|G;QL0s_ zL{(g;VyaHVG?Y+2l=A76Pmejvefe_HYELbF>LzZAKHCCu<8@ zbS~y%X97boB$}o32+XSpEb)OQqNn3@oloEl%*Pp%^-P?pXW=X;fiS`Z77$oa5m@8{ zi$u@H*_tGfLK3OT+A3%j{f&SHga-T2IaK2usR&%;V;6~@D>zs5JRy0$fcAWutQQC_ z5WP^qvXejKV9sb6Ttt{-^R77j#e$1Pe{11O1hkhBUMN^7dZ~bAM}KAuUuNOU2+z0d ze7#(7xhPj3)++?GR}j5YaHZ%~0+vBUi=x@O*n*1*a!X4Cje51*9oo@{ez%LuNTl>Pw)o84WfS(unZtrK+rl3HxjJ0 zV5KeQoxeygHhdJ!3_lYPAhT7=~IHIMEULv>eB++rwKkI zct-Re0+v1mGoyWVqXjq89b>FJ#^|$xXGQ;MkK85!?Iyb8Il*(H{}Qm|_+USM-h$5) z9BILk`hwsE(SKX;MFH)L1YZ)oB>J*|CE|m5`icc#Ay{I;5`9(hs_1_#_?m$BHG;1T zUKf2sz~cH~zP@R}HwnUm(6_z-;ArSFwT75WmGjdz)MuPLzq@2$QQBo@f{u2+z?>o`uXD!|&BB z1WTMu%|;ft#JC*FCFIW12qJclWFW*~DQM>jc;Ey91ZQ*nP_cdweb`-TQr>QNcmQhJs3BMzAMYDFBz1kC$`RH9GjlldXu4VdSdHN2F~e;tv?xS+x_DW z{<=TQtV0>Prw>?0=$_zrJZILEOi_A>I@A3Qk@X<6 z8Fz5Ekvfw94vlpj^PX)7@_!2G5Lt&YMd~q7#}5M?8tW$}Q#}Ui{F$IbWc|au%Zhye z{NlY?pD;!1A?k5&)(_0)?2@{S)cxM<)-&(hcAzfzR&KYODPoU-y4_p3-EF3sJqGH2 dZ{>EknW4Jix%;IbMB2BY+-|sWgSQtO^Ap#zh64Zq literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.88.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9be221a8c3926a265a7f570e0f6e9a1cee6d780d GIT binary patch literal 1144 zcmZ{jJ#Q015Qb-W@5^30J_rPdgk&ahzz87$g^$qS3lx+Q5>mSJ5e~(U9UrlQAXz>a z6ciNs2_ZE-QW`*_p+KUb;+G)NFw21=q_Bmb^Se7=JF^fEdIA8%4Ywt;3|cD7GLf|a zT7v(1qd!ZGT53EV|D#BfD%p8fO8SF#KZ*x~WOoQ)B&V132FVbFDtJ;V$B|%Lwn&8# zwh|zm8I_4}@&R-P;g@5$x775b{xC{+`;VS(4x?l*?xo!X?CSIOa4UM)-idc#M1!Zj zXtUq##_1pd$Bxsq`vMBZZ;oeyuXIC*Y#Bm-dkI2l$WjOhby=!Q2;EM&_hgC1mrbKK zl?_*bEOcyPi_zHy*`Ds5$A0#tZj)oO2-M_Qd!LcZ zq8q5a{M`3XpV`=B%?nieSNq6Xfwe-QwsIe>+-l=*$af(XStZ*Yy~ z4C*v*fONs2N(%-)EgE=)IE&|T4(IU#F5n`f?+~#|T2)|@23o?UBU;8~v|_4ZjaG04 zmG7BuUgU!pJ9G&z)u5s`g*JVbp-+l8)HYdY)p&}ynHJi&pu!Lh>7jKMD&&NMo9CeW zggn_qugn9=U9#%Z<6ac7=!0fgnvHaa+fXtw#>&p*`1d@i5IKNCYn%PsHSqc35CTIS^L4l)r_o>KP6wBbdnr$>{-{J@*wk>tI q{bdtgKTtfz{6y!Y6J91hj@w`MC}I%p5v-rrIf1`C~s6J%JiQ?n1K1^*?aNlb+o=znp@ksyLZ32wpUu; zZh{-F$K{WwJh!>KyY&sE(tr4Y1Cb76rIINy(dHx=h%sY;pn#bIg7G)Z*Y_r6^4q$d zjj=DfBKloDLVAd0f(Q1Je;ABGB-GDes~HzLRlJ#0`up?fq-+eC>LX6C^s#! z!I71le1sx8BH*K99hu`ecmPhH}-S zuJM?at2|C)G%mzbVxFqv6-&Irr|I;7&(Il5JZqi{ae~g$L=;?>=I!%lh0n=~a}`}5 zN|kU%*O{zTS(G^Pcv8&CnqD9*>II&nseR6WVGqDQe4g@jzR4HNUsB*AU7(9n;OD`s zm$GdsP>{uiihd^tsjFIow>M2l1s>XMjCH4T;uT&D6qFVix)O^zw%3ROtU;Yv)T zYpQN=jcR$wg=;Fb0YVe87DI2^#N;Kc?2<$7XOI(7F$Uz!LXJJ7BrqQN_c*{h1zEWX z5*ep}fn+5`=?FqWg|aBzki=wcjh=QB>>UJE81?U;!7T^AD2JDFN-gK_E3LWe7UfP`my*B II=>RYe_3w|!vFvP literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.9.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4f493bfbff13b032a2e72ba272835fc36941e485 GIT binary patch literal 535 zcmZXQzi!k(5XNU_cfCHZ4_rhDrJ4;_93VyFkL;4$z!UHS=ab??x&PoO3ev@U1tkRy zPr!qOiszw5LNFEuNKEt1{G|E5(ZH--BLLv(pr#n1Rxw75H9(Cr;SJu@xW|31x~}_Y zCQqu_T;AXqYyB;ry_>KS8x%+r@vw= zbu@qW^mMbG&bO=c>G{Rgbkn?f0_JF5KK~ylX13d{-b0#wBdeiMu0)IvAQa0J2vAZU zfMHDem>}3ixPE&g@WZ61B^^Xxh<=7kCw<|7pEuVl4+SJ)+zjHibDBq$&kWj}`cYlOj15Co9-4 ze9Gwv?z&EyNS*FuRA8}Dte5@%2nu4uP^tSOSgAsUDwT%b%WzVXW-})3?HP!h<+RT- q4^`?1JmB=T&uGHg5DM#L$FVE4B;>N2FZ_^)eZ0$19_Mty0KWkTrC$*M literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.90.wasm new file mode 100644 index 0000000000000000000000000000000000000000..852aab3302a110af0858a934ab7fdac850fcce54 GIT binary patch literal 962 zcmah{y^B*p5TBjh_mOO3o*#EcjWBaY$muD1%8S}~?-T?J3tNjMr#Z;iedRn9lDrg_ z3ZjT$r3hAnpon0hCnDMif?%PAoqvIqh&oR}K@hk3?f!OVemlQesC7FE092T&VjM$N z$8oIUDnL~wr+&Y$`c>WQ^;EB_2ZO<195U+q+)AcC-)+oSYTa&qX&E4)+)lmItuKSp zDIZaLK7wl;wV;%8v;yUh>R3g?Rj@Hc@Be^zOc!SNP3}I^SZPSjxysD>O1D#Mw<~jJ zJ2Ukqa0;{G{(oP)PHkbKeI8Qjq2n6}v<;Ptw?P!N#vpN6aZJby zQwba5Q1Gze#VLzm)54J=yms~X_Vz9N0y8F7Jsq3Aim{Ke9+;jQsGboShG-9~B(23r zScK@|DzH9Uc)3`3b^Of{Hqr3uyHAE4LUKZ!h=w;WJu&Rc(G9T_efe$0wqo*P~tOoI_3zI=Kl*s*Fs~PCeOZhCPMzls2?RWn zfX}0}fktRFaCxIdZ9J%fa9jiDDgT%^(IzrA-b|Z$3vD4C_+m>z;tEaPN?VJNv!|6! z{K6<;Ef>1QhD=c$7i$bThae}QLiEY(f*iY%5?5UE7TL!s^0P8bam19+7e^95z)C4A zNw%4Ik!TFG6XW3LTy#VtpvknPzEgxi>?aTl1eA0wfYPZHb!97~kT;ajus03jzej#q z8g#~`@sz0fCpj&zNM|ANtmIg-ff0p_k**+sd zgD3#egXpN~potJ2Li`ozB9wyJNZ}=}`EI`1nQ!Ntg<5-40f36qRZJ47>Lf{2QU$0g z7j?T`)vfAIr=vPm-Rt%K;gC_+x9(-@t@e7WQfs&CyL$kR@;B?7?fM=loemInDnRg! zr?!<+o>rjzF`cNmzYjKn_~UO#oz>ymg@rSBTN`)kTb13~-g*nXa4lN=oASNd_V&gD zNM{~;fq_ulNU7um#9?z5Vu&ys13?M1C4@NDi0|*r3i)W+u@UwKmjs_KTLf!`BSrZ9 z#mis+uU@~gpD=3@)zOLRssy{3=$`4Qp6VD8Vu;VNa)nJs!Xm_P_ks1*AD_Q`_$9&r%zsDpsVXoN;-EcAI?PK{sEKscv?3siW|6Es1l#*;M3Q#3_7 z48)abIXB(l8Ja0V-riQ$*@bb)S`xa+hD=c`7iSE4mmx2pA`Hl!hCKVR5>tFi?Qnq0 z6y#)^Vu&eWAcipQ4~F1A22Zcv{qgo1BqbWO5LutkhVtp%I0w)Mgu;qnwks*EP5W j*olg~-O8VDm)2_Q8+0Cyo`=gvi~q?lNFJ=YMgTtnKgp~J literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.92.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d48ee7ead314ba8174ea1df82e944c4d1ee2e238 GIT binary patch literal 2020 zcmb7^No*5m6vw}1#vW%JGVEc^dm(^BAY>ie5QqmG2wMnyz(8!k2(m!H5u#GC-71w( z3lc@NmmZ3ciqvyXO%E*BwxWj~D)rJ^&!|113aR~n1T|EurFNw8H}n6``+bYwdm>*P zlR^mD8p)}0S>$xNT$bgW5IKoAc}w2P$w@hx)1^}Bop;4b7p~lh7OoaAUmeO9i-qeG zLKrDDRv0T5CWO=xM=2e4ln7b29G6nsS_&CjqRTR}&HJ`bTB|Po=QkK_Pq{zk&C8-Vg&F*1zBDgdn7Jz{WLF2+ufCZUQWwsd6riM&jDIV zD`@2`=mU#aA!wDaCJbnTSJP^M8lW{K)VKkSGZ9TQr=L9rsF9c&v%Dtw8K5RwLrt@w zDT~)4XsxeC4QQ0t(K>+ELtCFvmkj6<$0#<<&FPhO@AvZtYNicYZV7$|Xd|`I##zvZ z7H>k(CSP4JpbOketpII?wmG4429)DAYMbWv^pX7lbx=EXWVtiA`%G{bbyAn->=4|I zfbO^+B-Nq^*(cu%aU5DasRu|k>j6$sVuq8m$@uC;nzvArw&Zzh@ED*T+DbhD;h!_t zt6tuQ;B9f;XMlaYowftm3#~V)QwEsg6s2Z3$o%o`_ussH4d4z6Xh)vY!4m*8l%~ua z5H-s?5xq066NZ@JU9=0t-OzR?b(3d945J`mS2LyU1h^@Dg2+QFnILnI!cff+uOX}NRB{#=20m=4k5JRb>Of_RjU z(9t>KZ4i$k`dD1o8)7{lr{f@=fOaCOJwx<(kOpV?WaiK7zg_9EKs-e!=~SMx!N(}4 z)0CytbHtB8JcH;naqSqQ!)NI%h(pkZl3Ey|;2h;qn$Uhww-(u3L>&g{D~GI2qK-p>MCpboe2pEIBBxda zf+J+blrvklo^XM35#$b|cB5vFlD5mL^rmCzfG~k3YXp3|NqFcDB+TL1B;z;_bPH?@ z&=4L&zQP(}%HlB6(V;LoaqQ4;#;zl163$_+!76HMg%@@aZ|&l@KMZF{Vw>Z(W-toe3V{Q--nNi zGQQvSFYAxPM}buJ6Y!DlRsAG*;DUTa6~0&Gh;PAXCM1y4*}}z>qHysX%bnnYA&-kpWX2Qe)Eo9zp}@?h(pE ztk$d9<<01P_2C+vo2=Itx8SSaR9c7>`o=WRAjQQoBg z_HnOxqWE%wivb-exB*4Rmvkg$hA5s(_R&d84_j)KQEf`al?1j@bKv@&w7D$@e83b- zRqyE4&RinLE_A|~3E38=D5M9p5X-i!A;hs|_Xau&rjMTOE9gj(j7k?=UWvyc`?k(U z#cdD0sd&hnwF-=<>@Pe+fR&gYZa N1-}OMA8d~S{sM68p`7g_0AM#6sk(-duIn1>5x@xL3u~N@ zbX8SOe_)HYE{#|k17;UOYM8Uf?Gy2fyF z0j`GdZCR4G(#Pc+h@$fFaPK|X^lOwD@Y?ke>w6IVv;zV9Dhoi+Q&~?zNG9RkQAfZJ zMT7R$iPWLgkA+j9B}kiNd7;xeCPl0MgyNN7;hCWhYQxX(%*-tti)+O=|B$75xO7fj4Ys80#<4+ z5lY3mkziP&kyb!B6_)Bk_;6qR2-alcIQ2TT=J6<%E)Rw##=d zveYU$4WESXC?)5U;5eg9sJT${O$`kdc!gHZxlL^{C42I`N~@&hwdXZ?w>IH*TJJ*J zy+GGERB|EXk)E<4(**)CWGH$9(t)tAESU$;<~X3ZiYYl_E4#9}ESy_pddhN2ElNE& zY2}3ECXKO1qta2Ws;eY)AQ8}Hrp>@z@QNaWf!>gU1MQ`#fws~#mSfyk;-RMuCr^Pb zC1eLOVAN#O5;gmrQ*n{z;A1BoCxIAI$b_3sB$2$4cMml*iMeb?{=W3G+})!`aJ7Vg Mp~nJ&Gd%+M0}8Z*%K!iX literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm b/wasm-spec-tests/generated-tests/wasms/float_exprs.95.wasm new file mode 100644 index 0000000000000000000000000000000000000000..e68450053bbcdb34e073a2aa4fd74ec2bc5c4180 GIT binary patch literal 932 zcmaJ5emZgxuB!~ zegXdhDjM=LD5;b2w@btM$>S`RoKBrQCkAKWd(U(itC7dp?3|9Cf6Wa#9#h`_dpk0x3_N$hSk=vcUWx<2Z!yG_Ha<|RojCGIK@`9bD`ID>PJVt z7m&$*GroaP+eoS8GQ?qb6Jm%kh=HJtK^Y6%+efK@7^E*JJXy0OB5;ev|PgH^vOmM2lYO2OYhG2+qvXY{z z%Sc#)_~RL{KF|Mpz$Tu_Ic0~CoCvp4^XE%;#dISq6JEtF_EIRbPagT9!x?dA?qG?q zj3v%e_5<5=)`uLBrQiwY;y2P|fpWAE`uk~v`AIl0nfZz?{Na9lPB;`UtZ0F2y1o~uGDu*5XveEM5cgBmC14|+LxlPTxG2?Lm3Tw`|x|G6%FL1 z0yEOhf5cgtBAbKIvyx-UhDJIBk{fh5N4d1Ut!YTNY)e)7y44H5F170I9^HcZv!|ia P&i_NVB^0cAOaQ+C{cEoc literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm b/wasm-spec-tests/generated-tests/wasms/float_literals.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..19ffe889d0bc0880a8a9c3eda59455e3e4bf9924 GIT binary patch literal 10300 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 XC>g?w!+2vPppKFu6-elsrqurdHXdhL literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm b/wasm-spec-tests/generated-tests/wasms/float_literals.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..73d7080d8af2ea1f46ea31f9ad2ec0b8ff323cef GIT binary patch literal 598 zcmYL`ziv}86vodV``Wp_QLltlF&>8uVPK$&ZWI<`=o9b)O@xAI($JJt2t;(Lc(b>@)&jIGBJHY*%+qS)1Q6yfz z`%o<}cjuR9i`{Pd{u-bw6`SQ|x4Z^q?})e{u*TvR5iKKNam*Rh%`Jos>F2$;V=Bid z)A6*KoQ$Vn?P9yV_yoTE!OlR6_>;n0YclPz#l2BlR9-{@!F42|A*AoO5cw3o{yQ8#|9%-wZKD+u zJ7q8Qn0+jy_!XTvF^lNM$DZ_rYp0x2@0F_5scbVMui&1PH3UTkZ3?ScN!59@Y%{fYK{$yTu$Z;- z?GS36Szy8sRdB+!3QgE6w9sYIkj^k76Wt5Y7*70zL2MVW3*=wLQl}{UP!~aaG*fNV kq0-)J75mcf?88vsULPzxIJ^Hjd9ygbkf)&Y2Qw0Y|M}HjA^-pY literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm b/wasm-spec-tests/generated-tests/wasms/float_memory.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4b5316c010896d5950fdb1e311585d94840bdea3 GIT binary patch literal 1302 zcmZWoO>+}R5bc@SUF~YtXl;xwz(BVxU~O#U&$TKSJfX-jhg^NIR6$hv3meOo3I}^t z1qTi}TRz@MCJ9JYQg6R`ue-JVhT7dDMMP?;+R|l7EmM}I zDqBP?g^c{8I&YbaiwmEf4-wL$P3QSnY3I1Rcf8x~b~~qML>`KcI!E2k87Y%mtxY9P zl0;J!gz7{o6$bcG(Ud8b>%ApglKc7HzoGIdil42oEgv4YpHdj_y?=}nk9N|mB06*_gqlld>CUvGP~ z&^^RQh~I2mO|}BT!es>ArpO-?eP1?_j3IHoUhmIJfh_SEgk)a@(?O}uLwr@K&!Z2b zy3GHJ0cI0&E25ZK9f)S#Aot@t67!h0|NdNpERv8lhlO5bo$E!3hHa(75m!Ew*nRt! zB;lBo%x0lfL9RA+?#a1WwtY#5rN%hru^qYMet@9HSGWd2g8CUGS)m(V(vWc;e zeA7=m<9-9}7SHglLEYOR-EQi-C)MQ+-{}kEgE7VZ4(2Qi&t8r>2ku;G6_8e%I`*VkR(Z8AYrMw6j;!;#Z14t~%wm0;;BD?p!9{~=_Df~` zUbV}_;J_S6z(E5R!zu#~KcO0eDo{39q8c`;hTD80vEJs`dkY&4e9I~)T+PU$l!eId zOUkM5(J`jf7X$wo$7oRx-UaG znbc}+3UQJonxY_72TG|hz(+;1CRgs{1=*b3&oBQS3iqP;QKP=JyWjnS!g%Z5G)g?$ zKiWU+Q6cg0cpis`J)bKHy9Wom-%wioEwTY+#x|77=gDO|bL6O@Q%6iyomMru!nXVR z@f^VK+8%A_6O8vT{?N9XYypA=GahRgGyH#o1H$ur-U2WK;Qq<@`SWjT0!lnInmrFV z$knkKXnfT`AM0HI&s?3tKb!|BTgd%NqL^6ih-O_O_v1?vGcMz=*B?ueMG~^+uxTE! zu9*iCohnHR9C6`OiQSVIBniiyWHt+>2t~1F+FsEX%XTQ~`EyOxMvWR_zagI zN{}dnENhw#FWZo5o_;7Z?kAAW@(iCHMLq}0xt3Y>lw~>3=Z7-;_Rxsr0?+b=u9V#` z5MAUlUxcWD$d@3y)HGEutIB1*?5n=wUV(O%ukh7T>}w!hYZ>+=mg{_dD2xZCihBd* z91G9AEp;B;`KBp*Zdoc^c_=sBA0XZ28+>yV?iMJwS_Ye{nM|r&9ZHRBzP{V;dz|tD z-{u7{W7KyC+&fJZdu}X?yy)v&a!*0K%S(KB6cC%{Wf;SgNLF}dD6726L08szP3l}{ zlUd);br9FLrNNB~mF(xr`c`X~iNS)|5m=`JL!z+(haXW1gKFrQgGDMyf7=2B+n2|*&3z6NHlvAIhXAJB&vXpU*1crkh#1AW!!8{DhmNBR%jste` zI}QC#qx&>Y_Sw5+S<#O2C0T$#MX-z8-a$T#{Z?C4W8={!!7U;0J3GCJi@NErGC%5W z?eYqdw-#_*=2Q48aJXrLUk47uOz_u%!yyy=CUE#+g1-SA7O*q_t!Ehv=r|TWENI17 QiXKlY*06w^IH{=9KNuPQrvLx| literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm b/wasm-spec-tests/generated-tests/wasms/float_memory.2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b8e358346d194fc939229ac77b556579caef6e91 GIT binary patch literal 1303 zcmZWoO>+}R5bc@SUF~YtXl;xwz(BVxU~O#U&$TKSJfX-j2d+L?DiBrv!p3r?!oglu zkwXqS#jP{~ioU&vp`Ek)i)CJB+Mq~3n>y8CJS4Yj*Riip%wwWZ6FTBa;Z zRkny)3K{uFb>1=;7Z*M|A0nhho6gIx(#~;r?|8S}?RHMjh&&V>b&k57Gg2nCTANCo zB#EXd2-S&FDh%+WqA61<*Lz2{B=^hve?sL^6u($sTRuE)Kc_I>`}i0o9_^kTpLVE{ zczF06ho>DsD+${tCx@>ot^O9-fHGqXrOG*S*}*J1Ds<|IDc5PP$yN5<*RN&)ezWb- zLiZ3KA%3@QHQ5R|wQw0hw<+?+L~qL`k})K%*X#XNDUc;TLm}BW!E{in^AKNE>htK6 zs4nw=V*qVJZbcLms{_%j8{~d^PhuX^_J=Pe$RY_@b6Ds_*12AkXgF3X9C76fiQV__ zND_`Y$!r!%736AD=boI4W!sl@*lLVZ9@~*C?ne~V_zKrhkf48tlC01TU(%3q9)BVe z?q`s$@&sQUbe#lcvZ>iqSg!H4zD(g=5Xm%8@$`<=-LELP&ULn12I+QF*FC8&clb_U7$3+K_Xn7>EIfNDa}M0OLPJWfC#AuS zCvw;Q3DP~j%l8KD?t^l_squ$$ok`AlU*>t<>sxT&;-x;|1%3c#41IW=ya+>hZYoQ> zY_+7#x@b2{>rLVpwIs;b&AsPzBlsOH{)~)o`1yB-Yy;!&`o%fgf4rgsT}@w6Z9& z`;v0%XLO7y^~JzH#xVvM4i3;iY)}TfFm0JSg4!|}g5EMQhw~X@SDJ~emn7hJu5iCwsG*OpjEFF`yH)V#{n+gXvGHo4KRK0 AtpET3 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm b/wasm-spec-tests/generated-tests/wasms/float_memory.3.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1fecd5025071c9c9d80c1e65c25f900621dae540 GIT binary patch literal 1353 zcmZuwyKWmt6umREyWHih%$01*^!r|kwn@v9^`J;GjXAapmyUlxBpe#hE0RSaNC1H= zASqI$NbSyDic~3C1UB*mDblCP4+KVv06}twv=iCP0K0eQ%(;)5dxpCGJw-%nvDndh zP92lyxyn049fcLC0lwpo84Lz~bv#B$i#EMaKTCW2{jL4YZol6B&y|GTgM-~KC@uaT*?=-*8%pK#^<0T+E$Y-kW&k0Y-_L?)(>$(7;o|xfEfVyPsZcVzo`i*@z7}YUBE%E zj?F;huLk;9=lXx<>Jk7H=Uz3<|8GrryK!PlikTr)*^N4lL zJd)^CNmAg53m;4DzI{cKaLh?&vrvlgD7H-7d$h%}9ZLFN%qdQJsw-#QOE{JI442@P zAW;UltZ6p9+lEZ@^kbQEKY(wal`oEX#R5Ka|}w!hYZ>+=mg{_dD2#zp#r+26 z91G9AEp;B;`KBp*Zdoc^c`P^FA0XZ28+>yV?iMJwS_X%znM|r&9ZHRBzP{V;Yuxez z-{u7{W7KyC+&fJZdu}X?yy)v&axXx;%S(KB6cC5zWeCHQNLF}dD6726L08szP3l}{ zlUd);br9FLrNNB~mF!bxeXF(0#9+hh2&7YiAko->!;h#0qZ&HqV3A4^IW=zUbBT4E z<0i-$;)fN=ARdNf%P^{m>wuj6 zNkf0q=st~;J$aWbE80=MBnuFz2zGJXE68WDUuuhL@CwG`4IVXwXQwyuQaAlu=4ail zU0xyb+5(Q(d%gIy3H~~8NMwTF1P(z=@Hc=%19s-adX}+)mSf}nf>wN` QX!4}T8aD70Cq3%)59DV4t^fc4 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm b/wasm-spec-tests/generated-tests/wasms/float_memory.4.wasm new file mode 100644 index 0000000000000000000000000000000000000000..40fe70979874123a541451ad8733a80a06206bae GIT binary patch literal 1302 zcmZWoO>-MX5bc@SUG46yqqXDMO5!Blwvxz>?f7%8;t~(8aOA+%2TKJ?mA|lKxhQh5 z*Qw;dfdgkwaOZ^XlvD5nIPe$v3mgM)BnL>ODyg^Myw}~@enai-96fAce|aFQz8#Vhn>T2=aiJmtk$Ly zCrP3y3PN?PlnMjD6V@0En@B#HlWi0lwb! zXrV67uDKr}sPZ+gLXe<-4oP0paHS`&Gw58E@tuC%yCB_d>Y69jrdsr`wOH8e4iim%RL0;VN>G|HFPcwZuDf9XZ?J0?i;++M?A-mz>F~;UMJ7P5T2XK z0x$Ua7Tx!tJ?2Gz+%LEU(o$2$o)pV6FZX1HS2);~RbG`fUSpG6tZyB>^*t%Ls8iK` zuB_jycDWcFn0*O2sKa7dWx(M_R7Fq)$_5Km#YWX&o6jZIn;d&@VWWX>nR3EuP8Ovs zM0QUy&U}xKF{M85`^Pv&1H-{S>W6j8VHc(iQ$tW2CP&a4CgyO~#1ef>gJz$-YnG?B z-!I7n6iUHP_q=g@7yDLOOk)G@d-7JZqdT~EJN{zwv-a)*FB5r30ms$+AHD({CK}?e z0f$$H`0K!7jv@XAa9Cl8-vo~B+p!PlS;7I9jf3|GTK1D-y~B!C9N^9kE7s^A%e?VS literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm b/wasm-spec-tests/generated-tests/wasms/float_memory.5.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b60089b25ccd03a54dc5e4b79c34f3f9d2e4b81b GIT binary patch literal 1352 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 LOdtyO6^MQVLQ;LJ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/func.0.wasm b/wasm-spec-tests/generated-tests/wasms/func.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..69490de212cebbfb6024d34d5110011cf9e14c9a GIT binary patch literal 6984 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/func.1.wasm b/wasm-spec-tests/generated-tests/wasms/func.1.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4557e47c9b33f28f4f9999cdd5671a8cdd145ee9 GIT binary patch literal 364 zcmZ9HJx&8L5Jtb5vG>oBaD@<+9fFh-?3Tocd$1{1h=h>9MhGOdPC-e*kvIZJ!V3iw zZr;or>l+Q0{e}S0dC_u=XeGu-u?1QhyI~l9E6{6_>{+_|r%AW%Z@1UWzV9CQz^JlK zx9Ph*NUD-qGOe>*DNQ>f(n6r@SR#ePCrm{6_(NWjUhZ~xFQ}?7Diy4lnkb$j*!2_v zHBSN@<~*4*LcR*m57Q*y7Nf2Cka&^!zAy}9aFwq4d1L#}lqt^Uwm3C6q9YBGws;B7 zD<@8^y>@yA%T7Bqa*{xe*aU8*2=G}dvznFDb5=gTgfCp~ibhhbFI{O>imKA5YUPbH OGaMOHQ5qU$9qfjN5PkkioH*%vF9;+KPU&Ge^qM`gUO02$53mu9P}*+0Y_h0G5cj|Zi9>%< z{{erA$x5X`Y9;VkesAWz8AmaycFh2=GFkBuuo58z7FNKD4O!p!7!umL@4r%fqp}{z zp7Mf=`r>m|U$)KV`>Jj0Z3hgcXkD+{x&sqa%ehcmX&uLk7MD`74WmRbu;_^h%wONa z1o)eKh=Y38HXkplZnv$E>#NOq^P%aExAm^APmqnYX8pI8KYyU_WH*?quExPg{?mFd zPgJ$poPWVI$r(IMoWxP0Qj`7?R>BHXG8SII+p|NGOP+Z+%y>5A@bRg?`gBOe?~9>Y z@@v9Zgg+OCG4@jtjCav1}g+1wu3$;9+R1>Q^gn}zVMkWM&xRw$>AV7XHcbMcgb&4nf4 zbD=$oh-g%D>C}wNB3`1dj7z+~r4@ M7?bWFSXu}C21S{8(EtDd literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm b/wasm-spec-tests/generated-tests/wasms/func_ptrs.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..f8d0a9762f227bb09c6f62665824c793ba65c66f GIT binary patch literal 825 zcmYLH$!-%t5Ut*3+S5IDXWvm(@F5&P0wf!8A&o>nfFFo0G!eFw*s;xa@#Mgf19$iU z4xBmXAM!&~J1kO5uj|$8S{wSa3jqKkwtBLzp{MG)7IhDxC)fhMie#(BV!`IWlO%tA zNhlT|A1PH`zW3F5HW;7wXR~TL2S`+QQC-ZcIf$h(nGP=J18Az!OQ~|}ye}nW+K7n| z!YBbE+f=oP*Eis5h`;_r-ZpA{S%Fpa4`XPU`P*q#L7~sa@222Pe=<4$1kK``_8NkA z9UDxb%IN?+@t!58BXjZ-h%dNp>i9s1a$@ZJq!b z)M%bVi$SDP^h0QIXM%FfFux)zkI|MqXKJ8MWfs`LB0$RF_>miOhd$+4C{xRYPI**B zPM}baIKF8^P-qakiYrFZRe?cvmF1urU$fMeNnPbHfh^`|y9&@eP?nQ6(7vXEt0+nc z-tilrYA~F^^IJdU;g%`Ad&O(zH8_9DUkT6pgL8Zgkaolr|EoLd2~)g8*F0T*vODrA Kli>6-1o#b=Nq%1d literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm b/wasm-spec-tests/generated-tests/wasms/func_ptrs.8.wasm new file mode 100644 index 0000000000000000000000000000000000000000..5f0fe14e83a5bf6a99ce4e7dc4e9cf0abeac6484 GIT binary patch literal 1780 zcmZ9MNpn+25Xa}uTcvrDp0NP~2L5dX2ryuSc{01lz+>O{)i%a}HR z<+a9?8uJ)=ZtX8DET}Q%RDPVKMf;P_zD_5f&rdxc9iN|{{OXlbPKxFx=jJD0DbMff z)Y^}tD2|gvFTGS4gx(7;jziy5UbM<@dG^hFWm?Mq{o%8V*ZASY`0VT}RbKS3l?lgR zyqNt~b(JcfvdY9^6ep!HF8^2R3{>Wu-1AzSl+9*(`8e09RZtC`Hng(wwEgB~FU9YM zoto=6^hfExA2wQ&pK5L5XjD32Y>x{hd){J&A27iG9bYWCJPN zpSUvi2inwXsn|DMRqemrtY(#D_9Isv_AlBM_7B=l`x|YSeMh^}{!F{d{z$tTSyq;A zXmscL5OhNyk~LT(YZ1#jti`%Qde9^5u^y|lPQ-*a5Z;jMAqNl1Mr;(IA~cXfdeJMJ zunDUOR|wY$*KVVCU2ZgdeY6DEcJT=zM+PX;g`dyvRp?7`kb1~Dl6un(Pt6T&&+Jl72eH>8QC z46(ue7{dNS4&ZNR)_fF4aI}zN42y+D2jMI;GD3JH z*Kjc87>>zt?tB8raiWj{g`C7m)Ck9fPZ2(q>mCR9$Z4FGGd#MpID@l=oWnUekMpP! zt`NRJ_(HDv+cb2yT*O7W#4;}95-t~V1y|%Mt|BEI5WYtETCTes+$Gm>U2gE`ZsG=R z7IF)>K4_bX&jL5!s7D}>wpL`oykQpy`lSNcU#)?+G44}bYaT8)*b{UGFk$*@EC!Tv zce-8NLy_0LUEE8Nlb~H3q{t!BF7Bhq`Oz-s6ggVj#U@2go=@WIrILmyawxTn`zdl} qnc8CUpU8oJs+?!bRM!*d-7?iR#hJKFbzO08E>m4w9QXe~ss91OVKv79 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm b/wasm-spec-tests/generated-tests/wasms/func_ptrs.9.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d58c6eed315cfd3c16beb7054a68955e5583bf5f GIT binary patch literal 683 zcmY*WyKYlK5S^Lby}S4Bb-d0?lrzDFDUbjmTcW{Bkq_VpVk{i#I2>RG8kLlU%;Mwc zc5%DAxxJe2c8gDYfKsY9i_LDa2Q*DhWU9&&IO}kWM9v^!b#6M$_YV*|$iM%AACSAA zuh)CJ|9Sv1nZ#xkmw#whWf0Fkc?nD$ zRG3L+rRG{1b`rVacquKn(&HXisb;6cM>>2oCfylPkUsY%v6TTQ9$d;XAIk}!ut~KV zIMvb9rJV8E5c=^NV{t~>FxoIHv22IxTO3<p*qAtZ{aalAD#&vYCMaN`T0mF8s{B8(|*fC7Z69t@@q(BoBl(f>Y8k2e$ zkrn?A^dO$Y!~nZzCX|D4crT5*XnK%B)SbvNSygCtw_TP475VtuK)G!^x_bO}{xH8; T^GkR<|Nq5TTGS7G!2o{&tdn8@ literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/globals.0.wasm b/wasm-spec-tests/generated-tests/wasms/globals.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..786d1cbc0ec0993225734b231772d1d69970edde GIT binary patch literal 5146 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 Pe&(W;!a=sN%$WZJ-h#_n literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/globals.17.wasm b/wasm-spec-tests/generated-tests/wasms/globals.17.wasm new file mode 100644 index 0000000000000000000000000000000000000000..14733ea6a204e25de1c33aeafa501805552b1e55 GIT binary patch literal 313 zcmYL?F;c@o3`M`BT|4n+2A2#p+K?hAuuHOB1gG#YB!mQH8n$l>GW|c=~{^e#kl05*ng>L#f`*E!OZXL9yi7l99?y zdViUl{9K)F!zbgd@oN=;;w$ZC!P|fNUty~(YmD<3qOcG*YWzn!x mzhoE7JH&~WI%&ne$Ei+hXQwJ#sx~obSkOfX71=PjT7f^Cq%oTS literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/i32.0.wasm b/wasm-spec-tests/generated-tests/wasms/i32.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..7ba73996020d56ef67a8d4056bec0be804dcbb27 GIT binary patch literal 32611 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 literal 0 HcmV?d00001 diff --git a/wasm-spec-tests/generated-tests/wasms/i64.0.wasm b/wasm-spec-tests/generated-tests/wasms/i64.0.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b12712a713f99098e3a4c0dcc7c62954627e1b55 GIT binary patch literal 34037 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